Zpo-3-wyk-Slajd36: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
 
Bwalter (dyskusja | edycje)
Nie podano opisu zmian
Linia 7: Linia 7:
# Utworzenie instancji obiektu testowanego przez klasę testującą
# Utworzenie instancji obiektu testowanego przez klasę testującą
# Uzyskanie referencji do obiektów zależnych niezbędnych do utworzenia/użycia obiektu testowanego. Może to polegać na bezpośrednim utworzeniu tego obiektu bądź jego wyszukaniu (np. w katalogu JNDI), lub też uruchomieniu oprogramowania dostarczającego tego środowiska (np. serwera aplikacji)
# Uzyskanie referencji do obiektów zależnych niezbędnych do utworzenia/użycia obiektu testowanego. Może to polegać na bezpośrednim utworzeniu tego obiektu bądź jego wyszukaniu (np. w katalogu JNDI), lub też uruchomieniu oprogramowania dostarczającego tego środowiska (np. serwera aplikacji)
# Wywołanie przypadku testowanego, który wywołuje metody w obiekcie testowanym
# Wywołanie przypadku testowego, który wywołuje metody w obiekcie testowanym


Jednak taka procedura jest niezupełnie zgodna z ideą testowania jednostkowego. W tym przypadku testom poddawany jest nie tylko sam obiekt testowany, lecz także wszystkie jego zależności. Powoduje to, że błąd znaleziony w teście może w rzeczywistości wynikać z obiektu testowanego lub jego zależności, które przecież aktualnie nie są testowane. Niezależnie od tego, nie do zaakceptowania jest sytuacja, w której dla potrzeb każdego przypadku testowego będzie uruchamiany serwer aplikacji, którego rozruch zajmuje dłuższy czas.
Jednak taka procedura jest niezupełnie zgodna z ideą testowania jednostkowego. W tym przypadku testom poddawany jest nie tylko sam obiekt testowany, lecz także wszystkie jego zależności. Powoduje to, że błąd znaleziony w teście może w rzeczywistości wynikać z obiektu testowanego lub jego zależności, które przecież aktualnie nie są testowane. Niezależnie od tego, nie do zaakceptowania jest sytuacja, w której dla potrzeb każdego przypadku testowego będzie uruchamiany serwer aplikacji, którego rozruch zajmuje dłuższy czas.

Wersja z 10:53, 17 paź 2006

Testowanie obiektów z zależnościami

Testowanie obiektów z zależnościami


Typowy proces testowania jednostkowego, w którym obiekt testowany wymaga pewnego środowiska, polega na wykonaniu następujących kroków

  1. Utworzenie instancji obiektu testowanego przez klasę testującą
  2. Uzyskanie referencji do obiektów zależnych niezbędnych do utworzenia/użycia obiektu testowanego. Może to polegać na bezpośrednim utworzeniu tego obiektu bądź jego wyszukaniu (np. w katalogu JNDI), lub też uruchomieniu oprogramowania dostarczającego tego środowiska (np. serwera aplikacji)
  3. Wywołanie przypadku testowego, który wywołuje metody w obiekcie testowanym

Jednak taka procedura jest niezupełnie zgodna z ideą testowania jednostkowego. W tym przypadku testom poddawany jest nie tylko sam obiekt testowany, lecz także wszystkie jego zależności. Powoduje to, że błąd znaleziony w teście może w rzeczywistości wynikać z obiektu testowanego lub jego zależności, które przecież aktualnie nie są testowane. Niezależnie od tego, nie do zaakceptowania jest sytuacja, w której dla potrzeb każdego przypadku testowego będzie uruchamiany serwer aplikacji, którego rozruch zajmuje dłuższy czas.

Celem testowania jednostkowego jest wyizolowanie obiektu testowanego od środowiska. Jednak jak osiągnąć ten cel, gdy obiekt ten wymaga spełnienia zależności?


<< Poprzedni slajd | Spis treści | Następny slajd >>