Io-11-lab-odp03

Z Studia Informatyczne
Wersja z dnia 11:34, 13 wrz 2006 autorstwa Bwalter (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Zadania – Automatyzacja wykonania testów – JUnit

<< Powrót do strony z zadaniami

Odpowiedzi

Zadanie 3

Listing 4 prezentuje rozwiązanie gdzie zbiór przypadków testowych generowany jest dynamicznie przez JUnit z wykorzystaniem mechanizmu refleksji języka Java. Metoda suite podaje obiekt implementujący interfejs Test, który zawiera zbiór przypadków testowych do uruchomienia. Obiekt ten może być wykonany przez metodę run klasy TestRunner z biblioteki JUnit.

 package elearning;
 
 import junit.framework.*;
 
 public class WszystkieTestyDynamicznie {
     public static Test suite() {
         TestSuite dynamicznie = new TestSuite(“Wszystkie dynamicznie”);
         dynamicznie.addTestSuite(SumaTest.class);
         dynamicznie.addTestSuite(CiagGeometrycznyTest.class);
         return dynamicznie;
     }
 }

Listing 4. Generowanie zbioru przypadków testowych metodą dynamiczną.

Listing 5 prezentuje rozwiązanie gdzie statycznie podawane są wszystkie przypadki testowe, które JUnit ma uruchomić. Jak widać trzeba wyszczególnić każdą metodę „test”.

 package elearning;
 
 import junit.framework.*;
 
 public class WszystkieTestyStatycznie {
     public static Test suite() {
         TestSuite statycznie = new TestSuite(„Wszystkie statycznie”);
         statycznie.addTest(new SumaTest(„testSuma”));
         statycznie.addTest(new CiagGeometrycznyTest(„testLadujDane”));
         statycznie.addTest(new CiagGeometrycznyTest(„testLadujNieprawidloweDane”));
         statycznie.addTest(new CiagGeometrycznyTest(„testObliczQ”));
         return statycznie;
     }
 }

Listing 5. Rozwiązanie zadania 3 wykorzystującego statyczny mechanizm tworzenia zbioru przypadków testowych.