Я хочу автоматизировать тестирование для моего небольшого PHP-проекта, пока он работает хорошо, единственное, что я не смог получить, — это отчет о покрытии кода.
В Gitlab-Ci есть опция Test coverage parsing
, который принимает регулярное выражение.
Пока все хорошо, я нашел регулярное выражение в http://jarretbyrne.com/2015/04/gitlab-ci-phpunit-test-coverage-parsing/ : ^\s*Lines:\s*\d+.\d+\%
Но, как говорится в комментарии: он не работает с включенными цветами.
PHPUnit
имеет переключатель командной строки --colors-[always|never|auto]
но эта опция применима только к нормальному выводу.
Как я могу отключить цвета для --coverage-text
? Могу ли я использовать другое регулярное выражение?
Редактировать:
Есть открытая проблема в https://github.com/sebastianbergmann/phpunit/issues/1771
Теперь я запускаю phpunit, чтобы убрать все цвета с вывода:
php vendor/phpunit/phpunit/phpunit --coverage-text | sed -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[mGK]//g"
Других решений пока нет …