POZIOM 2. Testy integracyjne

Podstawa testów

  • projekt oprogramowania i systemu

  • architektura na poziomie modułów i systemu

  • przepływ procesów (przepływy pracy)

  • diagramy sekwencji

  • specyfikacje interfejsów

  • definicje interfejsów zewnętrznych

  • przypadki użycia (use cases)

Obiekty testów

  • implementacja baz danych podsystemów

  • infrastruktura, interfejsy (zasady łączenia)

  • konfiguracja systemu i dane konfiguracyjne.

  • wykonywane na poziomie modułów i systemów.

Testy integracyjne sprawdzają interfejsy pomiędzy modułami, interakcje z innymi częściami systemu (takimi jak system operacyjny, system plików i sprzęt) oraz interfejsy pomiędzy systemami.

Przykład:

W aplikacji przechowującej dane studentów istnieją dwa moduły – jeden, który pobiera rekordy z formularza rekrutacyjnego oraz drugi, który te pobrane rekordy zapisuje. Testy integracyjne sprawdzają czy po połączeniu moduły prawidłowo ze sobą współpracują, na przykład czy pobrane rekordy są poprawnie zapisywane w bazie z danymi studentów.

Testowanie integracji modułów

sprawdza interakcje pomiędzy modułami i jest wykonywane po testach modułowych

Testowanie integracji systemów

sprawdza interakcje pomiędzy różnymi systemami lub pomiędzy sprzętem a oprogramowaniem i może być wykonywane po zakończeniu testów systemowych

Im większy jest zakres integracji, tym trudniejsze może być określenie, który moduł lub system zawiera defekt, co zwiększa ryzyko i wydłuża czas rozwiązywania problemów.

Testerzy koncentrują się wyłącznie na samej integracji, a nie na funkcjonalności poszczególnych modułów (lub systemów), ponieważ była ona sprawdzona wcześniej w testach modułowych (lub systemowych)

Testerzy powinni rozumieć architekturę i mieć wpływ na planowanie integracji. Jeżeli testy integracyjne planowane są zanim moduły lub systemy zostały wyprodukowane, można ich rozwój ustawić w kolejności pozwalającej na najbardziej efektywne testowanie.

Cele testowania integracyjnego

  • zmniejszanie ryzyka;

  • sprawdzanie zgodności zachowań funkcjonalnych i niefunkcjonalnych interfejsów z projektem i specyfikacjami;

  • budowanie zaufania do jakości interfejsów;

  • wykrywanie defektów (które mogą występować w samych interfejsach lub w modułach/systemach);

  • zapobieganie przedostawaniu się defektów na wyższe poziomy testowania.

Last updated

Was this helpful?