Разработчики) | Себастьян Бергманн |
---|---|
изначальный выпуск | 27 ноября 2001 г. ; 19 лет назад ( 2001-11-27 ) |
Стабильный выпуск | 9.5.2 / 2 февраля 2021 г. ; 10 дней назад ( 2021-02-02 ) |
Репозиторий | |
Написано в | PHP |
Операционная система | Кроссплатформенность |
Тип | Фреймворк модульного тестирования |
Лицензия | BSD 3 пункт |
Интернет сайт | phpunit.de |
PHPUnit - это фреймворк для модульного тестирования языка программирования PHP. Это экземпляр архитектуры xUnit для сред модульного тестирования, которая возникла в SUnit и стала популярной в JUnit. PHPUnit был создан Себастьяном Бергманном, и его разработка ведется на GitHub.
PHPUnit основан на идее, что разработчики должны иметь возможность быстро находить ошибки в своем недавно зафиксированном коде и утверждать, что в других частях кодовой базы не произошло регрессии кода. Как и другие инфраструктуры модульного тестирования, PHPUnit использует утверждения для проверки того, что поведение конкретного тестируемого компонента - или «модуля» - ведет себя так, как ожидалось.
Цель модульного тестирования - изолировать каждую часть программы и показать правильность отдельных частей. Модульный тест предоставляет строгий письменный контракт, которому должен удовлетворять фрагмент кода. В результате модульные тесты обнаруживают проблемы на ранних этапах цикла разработки.
PHPUnit может выводить результаты тестов в различных форматах, включая JUnit XML и TestDox.
В конце 2017 года была обнаружена уязвимость, которая позволяла злоумышленникам выполнять удаленный код через PHPUnit. Отправляя полезную нагрузку кода PHP в файл, который является частью PHPUnit, злоумышленник мог выполнить код PHP на веб-сервере.