PHPUnit 3.2.0

PHPUnit to opensourcowa (licencja BSD), napisana w PHP5 biblioteka do przeprowadzania testów jednostkowych (ang. unit tests) w tym języku. Jest PHP-ową wersją (portem) znanego ze świata Javy narzędzia JUnit (http://www.junit.org/ w wersji 3.8.1.

W skrócie, ideą testów jednostkowych jest zautomatyzowane, przeprowadzane przy użyciu specjalnych klas sprawdzanie wszystkich możliwych sytuacji związanych z funkcjonowaniem wybranego elementu aplikacji (np. modułu do pobierania listy nazwisk z bazy danych) przy pomocy zestawów testów (test suites), składających się z pojedynczych prób (test cases). Przykładowo, zestaw testów przeznaczonych do sprawdzenia wspomnianego pobierania nazwisk składałby się z prób dotyczących udanego i nieudanego łączenia się z bazą (to drugie np. w celu sprawdzenia obsługi błędów), podania prawidłowych i nieprawidłowych parametrów, otrzymania lub nieotrzymania wyników, itd. Bardzo przydatna jest tu zaimplementowana w narzędziu PHPUnit idea atrap obiektów (ang. mock objects). Są to obiekty symulujące zachowanie elementów naszej aplikacji, np. modułu konwertera XML-CSV. Równie istotne jest sprawdzenie, czy nie pominęliśmy jakiegoś fragmentu kodu naszej aplikacji podczas testów. W tym celu PHPUnit pozwala na przeprowadzanie badań określanych jako code coverage analysis z użyciem biblioteki Xdebug (http://www.xdebug.org).

PHPUnit pozwala zarówno na przeprowadzanie klasycznych testów jednostkowych, a także na wykonywanie testów niekompletnych (takich, w których nie implementujemy od razu wszystkich metod, a mimo to są one przeprowadzane poprawnie), czy pomijanie wybranych zestawów prób. Przebieg i wyniki naszych badań mogą być automatycznie zapisywane w plikach o formacie XML, TAP (Test Anything Protocol) lub jako grafy odczytywane przez narzędzie GraphViz. Mogą także mieć formę komunikatów w standardzie JSON czy wpisów PEAR::Log.

Warto wiedzieć, że możemy testować dowolne elementy i warstwy aplikacji. Co więcej, PHPUnit współpracuje z narzędziami zewnętrznymi. Przykładowo, w sprawdzaniu instalacji i spójności aplikacji czy jej współpracy z bibliotekami pomoże nam integracja z Phingiem (http://phing.info), który jest narzędziem przeznaczonym do automatyzacji procesów instalacji i konfiguracji. Testowanie działania interfejsu graficznego ułatwi nam natomiast napisane w JavaScripcie rozwiązania Selenium RC (http://www.openqa.org/selenium-rc/), które służy do zautomatyzowanego wypełniania formularzy, klikania przycisków, wybierania opcji, itd.
W wersji 3.2.0 projektu PHPUnit wprowadzono działające w środowisku okienkowym GTK2 narzędzie ułatwiające przeprowadzanie testów z użyciem PHPUnit. Usunięto również klasę PHPUnit_Extensions_TestSetup.

http://phpunit.de

Zaloguj się, aby dodać komentarz

Nie masz konta? Zarejestruj się »

Zobacz także

Skuteczne narzędzia do wykrywania uszkodzonych podzespołów

pobierz

Wykrywanie i usuwanie niechcianych programów

pobierz

Polecane artykuły

Array ( [docId] => 49120 )

Array ( [docId] => 49120 )
Array ( [docId] => 49120 )