zebrains-bitrix / zebrains.unit
Bitrix module for running PHPUnit tests
Installs: 6
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:bitrix-d7-module
Requires
- php: >=7.3
- phpunit/phpunit: >=9.6 <13.0
Requires (Dev)
- roave/security-advisories: dev-latest
This package is auto-updated.
Last update: 2025-09-05 08:55:43 UTC
README
Назначение модуля
Модуль представляет собой обёртку для библиотеки PHPUnit, предназначенную для отображения результатов тестирования в мониторе качества.
Требования
- PHP >= 7.3
- PHPUnit версий 9, 10, 11, 12
Настройка
- Установите модуль в систему Битрикс.
- Откройте настройки модуль в административной панели /bitrix/admin/settings.php?mid=zebrains.unit
- Сгенерируйте конфигурационный файл через интерфейс или укажите путь к существующему файлу конфигурации.
Указывайте пути относительно DOCUMENT_ROOT
.
Если файл конфигурации PHPUnit уже существует, то остальные поля, кроме автозагрузки, заполнять не нужно - перезаписи не будет.
Обратите внимание: атрибут RunInSeparateProcess (processIsolation) не поддерживается и его нужно отключить в файле конфигурации.
Использование
Создание тестов
Для создания новых файлов с тестами:
- Наследуйтесь от базового класса
\Zebrains\Unit\TestCase\AbstractTestCase
; - Реализуйте необходимые методы.
Запуск тестов
Через админку Битрикс:
- Перейдите в монитор качества /bitrix/admin/checklist.php;
- Запускайте тесты и просматривайте результаты их выполнения в разделе Unit-тесты.
Через командную строку:
php zebrains.unit/tools/tests.php
Как это выглядит в мониторе качества
Скриншоты
1. Монитор качества
Скриншот интерфейса монитора качества с нашей доработкой.
2. Конкретный тест
Скриншот конкретного теста, который выполняется.
3. Детальный отчет
Установка через composer
Пример вашего composer.json с установкой модуля в local/modules/
{
"extra": {
"installer-paths": {
"local/modules/{$name}/": ["type:bitrix-d7-module"]
}
},
"require": {
"zebrains-bitrix/zebrains.unit": "*"
},
}
Лицензия
Проект распространяется по лицензии MIT. См. файл LICENSE
.