В нашем проекте мы запускаем тесты PHPUnit , которые используют Selenium и Curl для открытия страниц на другом сервере разработки. На сервере B есть сервер Apache, обслуживающий веб-сайт.Сервер A запускает тестовое задание, синхронизируя ( Rsync ) файлы проекта с сервером разработки B, поэтому файлы проекта идентичны на обоих серверах.
Какие возможности существуют для удаленного сбора статистики покрытия кода в PHP?
Мы уже используем Xdebug для сбора данных о покрытии кода в модульных тестах, которые выполняются локально на сервере A (PHPunit использует файлы проекта напрямую и поэтому может запускать / останавливать сбор отчета о покрытии кода )
Обновление:
На сервере B веб-сайт отображается экземпляром PHP, запущенным Apache. При запуске тестов с использованием Selenium / Curl экземпляр PHP на сервере A используется версия командной строки. Этот экземпляр не может профилировать экземпляр PHP, который Apache запускает на сервере B.
При запуске модульных тестов (без использования другого сервера и без использования Selenium / Curl) мы используем такую команду:
phpunit --coverage-html ./results/codecoverage/ ATestFile.php
Это генерирует отчет о покрытии кода для теста в "ATestFile.php" с помощью Xdebug в PHP Cli.