Zakres testów

June 14th, 2007 | by admin |
 Zakres testów.pdf

Testy ze względu na zakres aplikacji, jaki obejmują dzielą się na:

Testy jednostkowe (Unit tests) - Testowanie na najniższym poziomie, podczas którego poszczególne metody (funkcje) testowane są pojedynczo, w oderwaniu od reszty aplikacji w celu sprawdzenia pod kątem zgodności ze zdefiniowanym typem/zakresem danych wejściowych.

W odniesieniu do testów jednostkowych, używana jest również nazwa “testy modułowe” lub “testowanie komponentów”. Testy na tym poziomie przeprowadzane są przeważnie przez programistów z użyciem przygotowanych wcześniej danych testowych.

Testy integracyjne - Kiedy zbiór komponentów zostanie przetestowany, następnym krokiem jest upewnienie się, że interfejsy pomiędzy owymi komponentami są zdefiniowane poprawnie i współdziałają ze sobą.

Testowanie integracyjne wykonywane jest w celu wykrycia błędów w interfejsach i interakcjach pomiędzy modułami (assembly testing). Przykład: Testujemy komunikację pomiędzy modułem przechowującym i udostępniającym zbiór parametrów, a modułem używającym tych parametrów przy inicjacji, np. do wypełnienia pól formularza domyślnymi wartościami.

Współczesne aplikacje składają się przeważnie z wielu współpracujących systemów, należy więc sprawdzić czy komunikacja pomiędzy nimi nie jest zakłócona.

Podejście do testów integracyjnych:

Top - Down (od góry do dołu)

  • Moduły znajdujące się na na najwyższym poziomie są testowane jako pierwsze
  • Moduły znajdujące się w hierarchii poniżej, zastępowane/symulowane są przez zaślepki (stubs)
  • Testowane moduły używane są do testowania niżej położonych komponentów
  • Proces testowy jest kontynuowany do momentu przetestowania komponentów znajdujących się na najniższym poziomie

Bottom - Up (od dołu do góry)

  • Najniżej położone komponenty testowane są jako pierwsze
  • Drivers(ang.) symulują komponenty położone wyżej w hierarhii
  • Testowane moduły używane są do testowania wyżej położonych komponentów
  • Proces testowy jest kontynuowany do momentu przetestowania komponentów znajdujących się na najwyższym poziomie

Big Bang (tłumaczenie jest adekwatne do tego co dzieje się z sytemem)

  • Błędy występujące w interfejsach komponentów wykrywane są w bardzo późnej fazie procesu testowego
  • Trudno jest określić miejsce w którym występuje defekt. Czy przyczyna błędu leży w komponencie czy w interfejsie.
  • Istnieje wysokie prawdopodobieństwo niewykrycia krytycznych błędów, które mogą ujawnić się dopiero w wersji produkcyjnej systemu
  • Trudno upewnić się czy wszystkie przypadki z poziomu testów integracyjnych są pokryte testami.

Testy systemowe - Celem przeprowadzania testów systemowych jest sprawdzenie, czy zintegrowany już system spełnia wymagania funkcjonalne oraz wymagania systemowe zawarte w specyfikacji.

Testy akceptacyjne - walidacja systemu pod kątem zgodności z wymaganiami klienta, który na swoim środowisku wykonuje przypadki testowe przy udziale przedstawicieli projektu. Kiedy system zostaje zaakceptowany, następuje uruchomienie na środowisku produkcyjnym.

Share and Enjoy:
  • Wykop
  • Gwar
  • del.icio.us
  • Digg
  • Google
  • Print this article!

Tags: ,

  1. 1 Trackback(s)

  2. Feb 4, 2008: Poziomy i typy testów | testerzy.org

Post a Comment