NMIO-TIS | Wydział Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej

Treść strony

NMIO-TIS

Testowanie w inżynierii systemów

Liczba godzin:   14 godz. (11 godz. wykładów, 3 godz. ćwiczeń)

Celem przedmiotu jest uzyskanie przez uczestników kompleksowej, szerokiej wiedzy na temat znaczenia, metod, technik oraz narzędzi do testowania w inżynierii systemów.

Treść wykładów

- definicje jakości. Atrybuty jakości. Jakość wewnętrzna i zewnętrzna. Jakość produktu, projektu i procesu. Jakość integralna (totalna). Jakość a efektywność.

- pomiary jakości: test jako pomiar. Testowanie w historii inżynierii jakości. Testowanie w historii inżynierii oprogramowania. Testowanie w różnych procesach wytwarzania systemów IT (SLC). Definicje pojęć: testowanie, weryfikacja, walidacja, certyfikacja, kontrola, audyt, kontrola jakości, zapewnienie jakości.

- podstawowe zasady testowania. Testowanie w kolejnych fazach projektu informatycznego (niezależnie od procesu wytwarzania). Generyczny proces testowy i jego dokumentacja.

- testy statyczne i dynamiczne. Testy produktów, projektów i procesów (pomiar dojrzałości procesu - w module 5). Testowanie wydajności, przepustowości i osiągów. Testowanie zabezpieczeń (odporności, bezpieczeństwa). Testowanie użyteczności (interakcji), w tym dostępności. Testowanie innych atrybutów jakości. Testowanie systemów: systemów rozproszonych, systemów bezpiecznych, systemów czasu rzeczywistego oraz systemów wbudowanych.

- techniki projektowania warunków i przypadków testowych: przegląd i klasyfikacja (na podstawie doświadczenia - formalne, funkcjonalne - strukturalne). Test a zarządzanie ryzykiem. Testowanie statystyczne (oszacowanie niezawodności).

- formalne techniki projektowania testów funkcjonalnych (testowanie dziedzin - klasy równoważności - warunki brzegowe - testowanie wg modelu przejść stanów - testowanie wg modelu związków przyczynowo-skutkowych - testowanie wg modelu przepływu transakcji - testowanie składniowe - testowanie wg modelu przepływu sterowania lub przepływu danych - testowanie przypadków użycia).

- pojęcie i zastosowanie pojęcia pokrycia testowego. Pokrycie czarno-skrzynkowe (funkcjonalne) i pokrycie strukturalne. Zastosowanie pomiaru pokrycia strukturalnego kodu. Różne miary pokrycia strukturalnego kodu.

- ogólne zasady zarządzania testowaniem. Planowanie (w tym - szacowanie pracochłonności), kontrola (pomiar) oraz nadzór testowania. Raportowanie testów. Zarządzanie środowiskiem testowym. Zarządzanie zmianami (zarządzanie konfiguracją i wersjonowanie, zarządzanie zgłoszeniami błędów). Standardy, pomiar dojrzałości oraz udoskonalanie procesu testowego. Testowanie w metodykach przyrostowych oraz zwinnych. TDD, testowanie eksploracyjne. 5-minutowy test (pytania z 4 odpowiedziami do wyboru, tylko jedna odpowiedź jest poprawna) z zakresu modułu 7.

- technologiczna i biznesowa potrzeba metodyk zwinnych. Metodyki ciężkie (tradycyjne) - metodyki przyrostowe/zwinne - ADP (Automated Defect Prevention). Nowe technologie: Internet, ISP/IAAS, ASP/PAAS, SOA/SAAS, chmura obliczeniowa/informatyczna/przetwarzania danych (cloud computing) oraz ich znaczenie dla potrzeby automatyzacji testów. Pojęcia: testy regresji (regresywne) oraz testy ponowne (re-testy).

- rodzaje automatyzacji: testy wymagań, testy projektu architektury, testy statyczne kodu (analiza oraz przeglądy), testy dokumentacji, narzędzia do modelowania wymagań, narzędzia do śledzenia związków wymagań, analiza dynamiczna, automatyczne wykonywanie testów, automatyczne wykonywanie specjalnych testów (WWW, różne platformy, testy wydajności-osiągów, bezpieczeństwa), tworzenie skryptów automatyczne tworzenie skryptów testowych metodą zarejestruj-odtwórz, tworzenie skryptów automatycznie ze specyfikacji testów, tworzenie specyfikacji testów automatycznie z modelu wymagań. Narzędzia wspomagające zarządzanie testowaniem.

- zintegrowania platforma narzędziowa firmy Parasoft. Prezentacja narzędzi firmy Parasoft - część pierwsza.

- zintegrowania platforma narzędziowa firmy Parasoft. Prezentacja narzędzi firmy Parasoft - część druga.

- zintegrowania platforma narzędziowa firmy Parasoft. Prezentacja narzędzi firmy Parasoft - część trzecia. Przykładowe zastosowanie wybranych narzędzi Parasoft do przetestowania dostarczonych przez uczestników procedur w Javie lub C++.

Treść ćwiczeń

- 5-minutowe testy (po 10 pytań każdy test) dla każdego z modułów 1-10.

- prezentacja platformy narzędzi testowych Parasoft - 2 moduły 45-minutowe.

- przykładowe zastosowanie wybranych narzędzi Parasoft - jeden moduł 45-minutowy.