PHPUnit

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania
PHPUnit
testy jednostkowe
Producent Sebastian Bergmann
Platforma sprzętowa wieloplatformowa
Pierwsze wydanie 1.0.0 – 2004-03-1515 marca 2004[1]
Aktualna wersja stabilna 3.6.10 – ????
Licencja BSD
www.phpunit.de

PHPUnitframework do testów jednostkowych dla języka programowania PHP. Jest członkiem rodziny frameworków xUnit wywodzącej się z pakietu SUnit stworzonego przez Kenta Becka[2]. PHPUnit jest rozwijany przez Sebastiana Bergmanna.

Zasada pracy[edytuj | edytuj kod]

PHPUnit służy do automatycznego testowania oprogramowania napisanego w języku PHP przy pomocy testów jednostkowych. Programiści tworzący aplikację przygotowują zestaw testów jednostkowych sprawdzających, czy poszczególne komponenty aplikacji działają zgodnie z oczekiwaniami. PHPUnit wykonuje po kolei wszystkie testy i po zebraniu wszystkich wyników, przedstawia programiście raport o ilości zaliczonych testów. Dodatkowo, zawiera on szczegółowe informacje o nieprawidłowych wynikach oraz błędach wykonania.

PHPUnit umożliwia szybkie przetestowanie całej aplikacji bądź też wybranej jej części, co ułatwia rozwój oraz zarządzanie nią. Programiści mogą na bieżąco sprawdzać, czy wprowadzane przez nich zmiany nie powodują problemów w zupełnie innym miejscu, które normalnie byłyby trudne do zauważenia.

Organizacja testów[edytuj | edytuj kod]

PHPUnit posiada obiektową budowę. Pojedynczy test reprezentowany jest przez metodę testNazwaTestu() w klasie dziedziczącej po PHPUnit_Framework_TestCase. Klasa ta tworzy tzw. zestaw testów (test suite), wyposażony w dodatkowe metody setUp() i tearDown(), które są wykonywane bezpośrednio przed i po wykonaniu testu. Ich zadaniem jest stworzenie środowiska, w którym będzie wykonywany każdy test z zestawu. Kontrola wyników testów wykonywana jest przez zestaw metod assert(), które porównują uzyskany wynik ze wzorcem.

Zestaw testów może również przyłączać inne zestawy testów, co umożliwia organizowanie testów w hierarchiczną strukturę przypominającą drzewo.

Możliwości[edytuj | edytuj kod]

PHPUnit oferuje programiście następujące możliwości:

  1. Narzędzia do tworzenia testów jednostkowych i organizowania ich w hierarchiczne zestawy.
  2. Interfejs linii komend do wykonywania testów
  3. Dostawcy danych (ang. data providers) – generatory zestawów danych dla testów pozwalające sprawdzić, jak pojedynczy test zachowuje się dla różnych danych wejściowych.
  4. Wsparcie dla testowania kodu korzystającego z baz danych.
  5. Możliwość testowania wyjątków.
  6. Wsparcie dla atrap obiektów (ang. mock objects)
  7. Generator raportów
  8. Generator raportów pokrycia kodu (wymaga XDebug)
  9. Współpraca z narzędziem Selenium RC do testowania interfejsów użytkownika

Linki zewnętrzne[edytuj | edytuj kod]

  1. Strona internetowa projektu
  2. Strona internetowa twórcy projektu

Przypisy

  1. Sebastian Bergmann: PHPUnit 1.0.0 Released (ang.). 15.03.2004. [dostęp 11 sierpnia 2009].
  2. Informacja podawana na stronie głównej www.phpunit.de [dostęp: 11 sierpnia 2009]