1 Wydział Zastosowań Informatyki i Matematyki SGGW26/03/2017 Inżynieria Oprogramowania 9. Testowanie oprogramowania - uzupełnienie podczas laboratorium Leszek J Chmielewski Wydział Zastosowań Informatyki i Matematyki SGGW
2 Źródła Materiały dra Waldemara Karwowskiego, wykładowcy w poprzednich semestrach Ian Sommerville, Inżynieria Oprogramowania, WNT, Warszawa 2003
3 Plan Wstęp Testowanie defektów Testowanie integracyjneTestowanie obiektowe Warsztaty do testowania Podsumowanie
4 Plan Wstęp Testowanie defektów Testowanie integracyjneTestowanie obiektowe Warsztaty do testowania Podsumowanie
5 Testowanie interfejsówSterowniki testów nie symulują całego systemu, a namiastka – gotowego modułu Interfejsy: Parametryczne W pamięci dzielonej Proceduralne – podsystem obudowuje zbiór procedur, dostarczając interfejsu do nich Z przekazywaniem komunikatów
6 Klasy błędów Niewłaściwe użycie interfejsu Niezrozumienie interfejsunajczęściej interfejsy parametryczne Niezrozumienie interfejsu źle zrozumiana specyfikacja, fałszywe założenia Błędy synchronizacji w systemach czasu rzeczywistego, odbiorca dostaje nieaktualne dane pamięć dzielona, przekazywanie komunikatów Uwaga: Nie każdy błąd powstaje w jednym miejscu np. interakcja usterek kilku modułów
7 Kilka zasad Jawnie wypisz wywołania zewnętrznych komponentów; w testach uwzględnij parametry leżące na granicach zakresów Testuj zerowe wartości wskaźników W interfejsie proceduralnym: niech test wywoła awarię komponentu – wykryjesz nieporozumienia co do specyfikacji W interfejsie z komunikatami: spowoduj przeciążenie W interfejsie wielu komponentów z pamięcią dzieloną: wypróbuj różne kolejności wywoływania komponentów – sprawdzisz niejawne założenia
8 Plan Wstęp Testowanie defektów Testowanie integracyjneTestowanie obiektowe Warsztaty do testowania Podsumowanie
9 Warsztaty do testowaniaGenerator danych testowych Specyfikacja Kod źródłowy Menedżer testów Dane testowe Wyrocznia Oracle Analizator dynamiczny Testowany program Wyniki testów Spodziewane wyniki Raport z wykonania programu Symulator środowiska Narzędzie do porównywania plików Raport z wynikami testów Generator raportów Przykład struktury
10 Warsztaty do testowaniaGenerator danych testowych Specyfikacja Kod źródłowy Menedżer testów Dane testowe Wyrocznia Oracle Analizator dynamiczny Testowany program Wyniki testów Spodziewane wyniki Raport z wykonania programu Symulator środowiska Narzędzie do porównywania plików Raport z wynikami testów Generator raportów Przykład struktury
11 Plan Wstęp Testowanie defektów Testowanie integracyjneTestowanie obiektowe Warsztaty do testowania Podsumowanie
12 Podsumowanie Testy często używanych części systemu są najważniejszeTestowanie integracyjne – sprawdza interakcję i interfejsy Defekty interfejsów: często w wyniku błędów rozumienia specyfikacji, fałszywych założeń Testowanie jest kosztowne – warto stosować narzędzia - warsztaty