Каков наиболее подходящий способ интеграции покрытия между проектом с зависимостями PHP и nodeJS?

У меня есть проект, который использует NodeJS и PHP вместе.

Глядя на обе части, PHPUnit и jest создают clover.xml

Для CI я использую Travis CI

Для совокупного покрытия я использую coveralls.io

Каков наиболее подходящий способ взять результаты обоих и отправить их в комбинезоны?

Я заметил документацию для интерфейса командной строки комбинезона, который я пытался использовать, чтобы использовать lcov.info. Это кажется простым форматом, и я считаю, что мог бы использовать утилиту командной строки cat для объединения двух.

Я не уверен, могу ли я сказать то же самое о формате XML clover.xml, который, похоже, использует php-комбинезоны.

Это говорит о том, что файл XML потенциально позволит мне извлечь и отправить две записи проекта, что может быть более описательным.

Я попытался отправить JS и PHP отдельно. Кажется, он генерирует ответ 422 при отправке второго проекта на coveralls.io.


person MrMesees    schedule 28.11.2020    source источник
comment
Это может лучше подойти для сайта Software Engineering Stack Exchange.   -  person El_Vanja    schedule 28.11.2020
comment
Если это XML, не могли бы вы просто написать PHP-скрипт для их объединения? Звучит как работа для SimpleXML.   -  person halfer    schedule 28.11.2020
comment
Проверьте мой ответ. Уже почти полдня разобрали, ничего нового не сделали   -  person MrMesees    schedule 29.11.2020


Ответы (1)


Не надо ничего изобретать.

travis_retry php bin/php-coveralls -v -x tests/reports/clover.xml -x coverage/clover.xml -o tests/reports/coveralls.json

Это то, что сработало для меня. Оказывается, вы можете указать несколько параметров -x {path/to/file} вместо одного.

Я думаю, если я хочу настроить заголовки, которые, кажется, не отображаются на coveralls.io, я могу поискать варианты в jest и phpunit.

person MrMesees    schedule 29.11.2020