What is the most appropriate way to integrate coverage between a project with PHP and nodeJS dependencies?

119 views Asked by At

I Have a project which uses NodeJS and PHP together.

Looking at both parts, PHPUnit and jest produce a clover.xml

For CI I am using Travis CI

For aggregate coverage I am using coveralls.io

What is the most appropriate way to take the output of both and send them to coveralls?

I noticed the documentation for a coveralls CLI I attempted to use attempts to use lcov.info. This seems like a simple format, which I believe I could use cat command line utility to use to aggregate the two.

I am uncertain if I can say the same of the XML clover.xml format php-coveralls seems to use.

This said the XML file would potentially allow me to extract and send as two project entries, which may be more descriptive.

I tried sending the JS and PHP separately. It seems to generate a 422 response upon sending the second project to coveralls.io

1

There are 1 answers

0
MrMesees On

No need to invent anything.

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

This was what worked for me. Turns out you can specify multiple -x {path/to/file} parameters instead of a single.

I Think if I want to customize titles, which it seems coveralls.io does not surface, I can look for options in jest and phpunit.