WikiDer > PHPUnit
Разработчики) | Себастьян Бергманн |
---|---|
изначальный выпуск | 27 ноября 2001 г.[1] |
Стабильный выпуск | 9.2.2 / 7 июня 2020 г.[2] |
Репозиторий | |
Написано в | PHP |
Операционная система | Кроссплатформенность |
Тип | Фреймворк модульного тестирования |
Лицензия | BSD 3 пункт |
Интернет сайт | phpunit |
PHPUnit это модульное тестирование рамки для Язык программирования PHP. Это пример xUnit архитектура для сред модульного тестирования, которая возникла с SUnit и стал популярен с JUnit. PHPUnit был создан Себастьяном Бергманном, и его разработка ведется на GitHub.
Цель
PHPUnit основан на идее, что разработчики должны иметь возможность быстро находить ошибки в своем недавно совершенном коде и утверждать, что нет регрессия кода произошло в других частях кодовой базы. Как и другие модульное тестирование фреймворки, PHPUnit использует утверждения чтобы убедиться, что поведение конкретного компонента - или "единица измерения" - тестируемый ведет себя так, как ожидалось.[3]
Преимущества
Цель модульного тестирования - изолировать каждую часть программы и показать правильность отдельных частей. Модульный тест предоставляет строгий письменный контракт, которому должен удовлетворять фрагмент кода. В результате модульные тесты обнаруживают проблемы на ранних этапах цикла разработки.
PHPUnit может выводить результаты тестов в различных форматах, включая JUnit XML и TestDox.
Уязвимости
Уязвимость, которая позволяла злоумышленникам выполнять удаленный код через PHPUnit, была обнаружена в конце 2017 года. Отправляя полезную нагрузку кода PHP в файл, который является частью PHPUnit, злоумышленник мог выполнить код PHP на веб-сервере.[4]
Рекомендации
- ^ «PHP: версия 63330». svn.php.net.
- ^ «Релизы · sebastianbergmann / phpunit». GitHub.
- ^ Утверждение (вычисление)
- ^ Бергманн, Себастьян. "PHPUnit: угроза безопасности?". Консалтинговая компания PHP. Консалтинговая компания PHP. Получено 20 октября 2020.