Maciej Oleksy Zenon Matuszyk



Podobne dokumenty
INŻYNIERIA OPROGRAMOWANIA TESTOWANIE SYSTEMOWE

Porównanie metod i technik testowania oprogramowania. Damian Ryś Maja Wojnarowska

Dlaczego testowanie jest ważne?

Testowanie oprogramowania. Testowanie oprogramowania 1/34

Testowanie oprogramowania. Piotr Ciskowski

Testowanie oprogramowania

Plan Testów Systemu SOS

Wykład 8. Testowanie w JEE 5.0 (1) Autor: Zofia Kruczkiewicz. Zofia Kruczkiewicz

Usługa: Audyt kodu źródłowego

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming

Konwerter Plan testów. Jakub Rauch Tomasz Gołębiowski Adam Busch Bartosz Franaszek 1 czerwca 2008

Wykaz osób w postępowaniu o udzielenie zamówienia publicznego nr 32-CPI-WZP-2244/13. Podstawa do dysponowania osobą

Studia podyplomowe PROGRAM NAUCZANIA PLAN STUDIÓW

Dwuwymiarowy sposób na podróbki > 34

Ełk, dn r. DOMSET Marcin Brochacki. ul. Wojska Polskiego 43 lok. 3, Ełk. Nip ZAPYTANIE OFERTOWE

PROJEKTOWANIE. kodowanie implementacja. PROJEKT most pomiędzy specyfikowaniem a kodowaniem

Zawód tester, czyli na czym polega testowanie. Katarzyna Łabinska Justyna Sacha - Gawlik

Zespół: Agata Chrobak Kornel Jakubczyk Tomek Klukowski Przemek Kosiak. Projekt SZOP Plan testów

Wstęp do testowania : Szymon Ramczykowski

Zwinna współpraca programistów i testerów z wykorzystaniem BDD i. by Example (JBehave/Spock/SpecFlow)

Testowanie I. Celem zajęć jest zapoznanie studentów z podstawami testowania ze szczególnym uwzględnieniem testowania jednostkowego.

Wstęp. Inżynieria wymagań. Plan wykładu. Wstęp. Wstęp. Wstęp. Schemat procesu pozyskiwania wymagań

Strategia testów mająca doprowadzić do osiągnięcia pożądanych celów

Sukces vs porażka. Sukces. Porażka

REFERAT PRACY DYPLOMOWEJ

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

Jakość w procesie wytwarzania oprogramowania

Testowanie i walidacja oprogramowania

Zarządzanie testowaniem wspierane narzędziem HP Quality Center

Michał Olejnik. 22 grudnia 2009

Kontrola jakości artefaktów

Rubik s Manager - Plan testów

INŻYNIERIA OPROGRAMOWANIA TESTOWANIE INTEGRACYJNE

Testowanie aplikacji mobilnych na platformie Android - architektura, wzorce, praktyki i narzędzia

Część I - Załącznik nr 7 do SIWZ. Warszawa. 2011r. (dane Wykonawcy) WYKAZ OSÓB, KTÓRYMI BĘDZIE DYSPONOWAŁ WYKONAWCA DO REALIZACJI ZAMÓWIENIA

JUnit TESTY JEDNOSTKOWE. Waldemar Korłub. Platformy Technologiczne KASK ETI Politechnika Gdańska

Wykład 7. Projektowanie kodu oprogramowania

Overlord - Plan testów

Rozdział 5: Zarządzanie testowaniem. Pytanie 1

System Kontroli Bazy Danych Topograficznych (SKBDT) zawód kartografa?

Spis treści. Przedmowa Karolina Zmitrowicz, Adam Roman. Część I. Organizacja i procesy 1

Piotr Ślęzak. Gdzie się podziała jakość

Możliwe strategie tworzenia niezawodnego oprogramowania:

Główne założenia XP. Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness)

Testy poziom po poziomie

Egzamin / zaliczenie na ocenę*

Praktyczne aspekty stosowania metody punktów funkcyjnych COSMIC. Jarosław Świerczek

Fuzzing OWASP The OWASP Foundation Piotr Łaskawiec J2EE Developer/Pentester

Projektowanie oprogramowania. Termin zajęć: poniedziałek, a podstawie materiału ze strony.

Plan testów do Internetowego Serwisu Oferowania i Wyszukiwania Usług Transportowych

ZAPYTANIE OFERTOWE. Zamawiający. Przedmiot zapytania ofertowego. Wrocław, dnia r.

Budowa aplikacji webowej w oparciu o Maven2 oraz przykłady testów jednostkowych. Wykonał Marcin Gadamer

Szybkość w biznesie. Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015

Testujemy dedykowanymi zasobami (ang. agile testers)

Tworzenie przypadków testowych

Nazwa Projektu. Plan testów. Wersja N.NN

Załącznik nr 19 do Umowy nr... z dnia... Plan Testów Systemu. Projekt ZEFIR 2

Praca magisterska Jakub Reczycki. Opiekun : dr inż. Jacek Rumiński. Katedra Inżynierii Biomedycznej Wydział ETI Politechnika Gdańska

Optymalizacja Automatycznych Testów Regresywnych

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

PYTANIA PRÓBNE DO EGZAMINU NA CERTYFIKAT ZAAWANSOWANY REQB KLUCZ ODPOWIEDZI. Część DODATEK

Topór Światowida Plan testów

Przypadki bez przypadków. Jak dobierać scenariusze testowe.

TESTOWANIE APLIKACJI KORPORACYJNYCH

Opis metodyki i procesu produkcji oprogramowania

Opis Przedmiotu Zamówienia

Wprowadzenie do systemów informacyjnych

Krzysztof Wawrzyniak Quo vadis BS? Ożarów Mazowiecki, styczeń 2014

PRZEWODNIK PO PRZEDMIOCIE

INŻYNIERIA OPROGRAMOWANIA Wykład 6 Organizacja pracy w dziale wytwarzania oprogramowania - przykład studialny

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Jarosław Żeliński analityk biznesowy, projektant systemów

Koncepcja systemu zarządzania jakością w dużym projekcie informatycznym zgodnie z normą ISO/IEC 9001:2008

Etapy życia oprogramowania

Analityk i współczesna analiza

Zasady organizacji projektów informatycznych

Opis realizacji dla czterech zespołów (4 przypadki użycia)

Waterfall model. (iteracyjny model kaskadowy) Marcin Wilk

Zapewnienie bezpieczeństwa w całym cyklu życia aplikacji (czyli dlaczego lepiej zapobiegać chorobom, niż leczyć je w zaawansowanym stadium)

Dokument Detaliczny Projektu

kompleksowe oprogramowanie do zarządzania procesem spawania

Metodyka projektowania komputerowych systemów sterowania

Lokalizacja Oprogramowania

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Podstawy Techniki Komputerowej. Temat: BIOS

Szablon Planu Testów Akceptacyjnych

Usługa: Testowanie wydajności oprogramowania

Metody bioinformatyki (MBI) projekt, dokumentacja końcowa

MODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś

Programowanie zespołowe

FORMULARZ OFERTOWY. Termin dostarczenia dokumentu 1

Opis przedmiotu zamówienia

Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework. Edyta Tomalik Grzegorz Ziemiecki

Referat pracy dyplomowej

Aurea BPM. Unikalna platforma dla zarządzania ryzykiem Warszawa, 25 lipca 2013

udokumentowanych poprzez publikacje naukowe lub raporty, z zakresu baz danych

Wszystkie problemy leżą w testach. ForProgress spółka z ograniczoną odpowiedzialnością sp.k.

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7

Projektowanie systemów informatycznych. Roman Simiński programowanie.siminskionline.pl. Cykl życia systemu informatycznego

Transkrypt:

Maciej Oleksy Zenon Matuszyk

Jest to proces związany z wytwarzaniem oprogramowania. Jest on jednym z procesów kontroli jakości oprogramowania.

Weryfikacja oprogramowania - testowanie zgodności systemu z wymaganiami zdefiniowanymi w fazie określenia wymagań. Walidacja (atestowanie) oprogramowania - ocena systemu lub komponentu podczas lub na końcu procesu jego rozwoju na zgodności z wyspecyfikowanymi wymaganiami.

Testowania umożliwia wykrycie błędów we wczesnych stadiach rozwoju oprogramowania, co pozwala zmniejszyć koszty usuwania tego błędu. Warto testować na każdym etapie tworzenia oprogramowania. Testować należy jak najwcześniej, ponieważ im później wykryty zostanie błąd tym większy jest koszt jego usunięcia.

Podstawowym standardem dla testowania oprogramowania jest IEEE 829 1998 (829 Standard for Software Test Documentation). Test Plan dokument planowania zarządzania projektem, który składa się z informacji o tym, w jaki sposób będą prowadzone testy, kto będzie je przeprowadzał, co będzie testowane, jak długo potrwa cały proces oraz jaki będzie zakres testów. Test Design Specification szczegóły na temat warunków testowania, oczekiwanych wyników a także kryteriach przejścia testu.

Test Case Specification specyfikuje dane testowe do użycia podczas wdrażania warunków testowania określonych w Test Design Specification. Test Procedure Specification zawiera szczegóły na temat przeprowadzenia każdego testu włączając w to założenia oraz poszczególne kroki testów. Test Item Transmittal Report zawiera raporty na temat czasu przejścia testowanych fragmentów oprogramowania między etapami. Test Log zawiera informacje o tym, które przypadki testowania zostały użyte, kto je użył i w jakim porządku oraz informacje o ich powodzeniu. Test Incident Report zawiera informacje o testach zakończonych niepowodzeniem. Informacje o wynikach oraz dlaczego dany test nie powiódł się. Test Summary Report raport ten zawiera wszystkie istotne informacje ujawnione podczas zakończonych testów oraz wyceny jakości procesów testowania, jakości oprogramowania poddanego testowi, a także statystyki uzyskane z Incident Report. Raport referuje również do typów i czasu trwania wykonanych testów w celu usprawnienia wszelkich planów związanych z testami w przyszłości. Ostateczna forma dokumentu jest wykorzystywana w celach weryfikacji poprawności testowanego systemu względem wymagań zdefiniowanych przez zleceniodawców.

Testy funkcjonalne. Polegają one na tym, że wcielamy się w rolę użytkownika, traktując oprogramowanie jak czarną skrzynkę, która wykonuje określone zadania. Nie wnikamy wogóle w techniczne szczegóły działania programu. Testy te często są nazywane testami czarnej skrzynki Testy strukturalne. Tym razem tester ma dostęp do kodu źródłowego oprogramowania, może obserwować jak zachowują się różne części aplikacji, jakie moduły i biblioteki są wykorzystywane w trakcie testu. Te testy czasami są nazywane testami białej skrzynki

1. TESTY MANUALNE Testy wykonywane ręcznie przez testera, który przechodzi przez interfejs użytkownika zgodnie z określoną sekwencją kroków: a) testy integracyjne pozwalają sprawdzić jak współpracują ze sobą różne komponenty oprogramowania. Obecnie rzadko mamy do czynienia z monolitycznymi aplikacjami. Są one raczej tworzone modułowo, dlatego należy sprawdzić, czy wszystko razem działa poprawnie b) testy systemowe dotyczą działania aplikacji jako całości. Zazwyczaj na tym poziomie testujemy różnego rodzaju wymagania niefunkcjonalne, takie jak szybkość działania, bezpieczeństwo, niezawodność, dobrą współpracę z innymi aplikacjami i sprzętem. Testy dopasowane do aktualnego zapotrzebowania/przeznaczenia: a) testy funkcjonalne znane również jako testy czarnej skrzynki. Osoba testująca nie ma dostępu do informacji na temat budowy programu, który testuje. Wykonując testy nie opiera danych testowych na budowie wewnętrznej programu, lecz na założeniach funkcjonalnych, jakie powinien spełniać program zgodnie z dokumentacją

b) testy regresyjne mają na celu sprawdzenie wpływu nowych funkcjonalności na działanie systemu c) testy akceptacyjne z udziałem klienta wykonywane w celu sprawdzenia na ile oprogramowanie działa zgodnie z wymaganiami klienta d) testy dokumentacji, których celem jest wykrycie niespójności i niezgodności w dokumentacji analitycznej, technicznej oraz dokumentacji użytkownika, sporządzonej w ramach realizowanego projektu informatycznego e) testy użyteczności, których celem jest weryfikacja interfejsu użytkownika w zakresie przystępności, wygody, szybkości oraz zgodności z oczekiwaniami przyszłych użytkowników. 2.TESTY AUTOMATYCZNE Testy automatyczne skutecznie przyspieszają proces tworzenia testów systemowych, ich wykonywanie oraz analizę, a tym samym pozwalają na wcześniejsze wykrycie i wyeliminowanie błędów w aplikacjach. Testy automatyczne wykonywane są w oparciu o wysokiej jakości oprogramowanie.

Poznaniu architektury systemu. Na tym etapie będzie można wstępnie określić na ile skomplikowany będzie proces testowania Określeniu jakiego typu testy są potrzebne. Może być to związane zarówno z charakterystyką testowanego systemu jak i z wymaganiami klienta, standardami zapewniania jakości przyjętymi w firmie Weryfikacji testowalności systemu. Jest to istotne przy dużych, wielowarstwowych aplikacjach. Tester, aby móc skutecznie testować system, musi mieć dostęp do wszelkich potrzebnych mu danych. Takie podejście do procesu testowania pozwala na dokładne oszacowanie czasochłonności procesu testowania a co za tym idzie określenie dokładnych kosztów całego procesu.

Celem audytu projektu informatycznego jest dostarczenie odbiorcy i dostawcy obiektywnych, aktualnych i syntetycznych informacji o stanie całego projektu Jest to osiągane przez zbieranie dowodów, że projekt: posiada możliwości (zasoby, kompetencje, metody, standardy) by osiągnąć sukces, optymalnie wykorzystuje te możliwości, rzeczywiście osiąga założone cele (cząstkowe). Zebrane informacje służą jako podstawa do podejmowania strategicznych decyzji w projekcie

Przebieg procesu testowania mutacyjnego przedstawiony jest na poniższym schemacie: Polega na automatycznym wielokrotnym wprowadzaniu małych losowych błędów w programie i uruchamianiu za każdym razem testów jednostkowych, które powinny te błędy wykryć. Testowanie mutacyjne wymaga dużej mocy obliczeniowej i dlatego dopiero od niedawna próbuje się je wykorzystywać w praktyce.

Wydajność systemu Interfejsy systemu Własności operacyjne systemu Testy zużycia zasobów Zabezpieczenie systemu Przenaszalność oprogramowania Niezawodność oprogramowania Odtwarzalność oprogramowania Bezpieczeństwo oprogramowania Kompletność i jakość złożonych funkcji systemu Nie przekraczanie ograniczeń Modyfikowalność oprogramowania Obciążalność oprogramowania Skalowalność systemu Akceptowalność systemu Jakość dokumentacji

Podsumowując testy możemy klasyfikować na różne sposoby, ze względu na to, co i w jaki sposób podlega procedurom testowym. Również oprogramowanie testujemy na bardzo różne sposoby, zależnie od tego jaki aspekt jego działania jest w danym momencie dla nas ważny. Stosowanie testowania oprogramowania może znacznie obniżyć koszty projektu, dzięki wczesnemu wykryciu błędów i ich naprawie.

www.wikipedia.org www.testowanie.net www.testerzy.pl

DZIĘKUJEMY