PHPUnit

Z Wikipedii, wolnej encyklopedii
PHPUnit
logo
Autor Sebastian Bergmann
Pierwsze wydanie 1.0.0 – 2004-03-15 15 marca 2004(dts)[1]
Aktualna wersja stabilna 11.0.3
(10 lutego 2024) [±]
Platforma sprzętowa wieloplatformowa
Rodzaj testy jednostkowe
Licencja BSD
Strona internetowa

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 do testowania interfejsów użytkownika

Przypisy[edytuj | edytuj kod]

  1. Sebastian Bergmann: PHPUnit 1.0.0 Released. 15.03.2004. [dostęp 2009-08-11]. [zarchiwizowane z tego adresu (5 marca 2016)]. (ang.).
  2. Informacja podawana na stronie głównej www.phpunit.de [dostęp: 11 sierpnia 2009]

Linki zewnętrzne[edytuj | edytuj kod]