Так что я смог это исправить, используя PHP 7.2 в качестве образа Docker и установив xdebug
на вызов before_script
.
.gitlab-ci.yml:
image: php:7.2
stages:
- test
before_script:
- pecl install xdebug
- docker-php-ext-enable xdebug
app:unit-tests:
stage: test
script:
- php ./unit-tests/phpunit --bootstrap ./unit-tests/autoload.php ./unit-tests/tests --coverage-text --colors=never
coverage: '/^\s*Lines:\s*\d+.\d+\%/'
Мне пришлось использовать PHP 7.2, потому что, когда я пытался запустить pecl install xdebug
, он сказал, что для этого требуется PHP 7. В идеале я хотел бы использовать PHP 5.6, потому что это то, что есть у нашего текущего сервера, так что тесты на похожих версиях, но я оставлю все как есть.
Мне пришлось добавить --coverage-text --colors=never
к вызову script
, чтобы он выводил числа. Затем при вызове coverage
я изменил его на '/^\s*Lines:\s*\d+.\d+\%/'
, который я также использовал в разделе Test coverage parsing
в настройках проекта.
А теперь покрытие кода правильно показывает мои ожидаемые значения.