У меня есть репозиторий на Github, приложение PHP Symfony с набором тестов PHPunit (https://github.com/antodippo/ccmusicsearch), и Travis CI правильно проверяет сборку каждый раз, когда я нажимаю (https://travis-ci.org/antodippo/ccmusicsearch/builds).
Я связал учетную запись Coveralls со своей учетной записью Travis и Github и настроил свой файл .travis.yml следующим образом:
language: php
php:
- 5.5
- 5.6
before_script:
- composer self-update
- composer install
script:
- mkdir -p build/logs
- phpunit -c app/phpunit.xml.dist
after_success:
- bin/coveralls -v
и я положил эти строки в моем phpunit.xml.dist:
<logging>
<log type="coverage-clover" target="build/logs/clover.xml"/>
</logging>
но Coveralls все еще говорит, что не было сборки (https://coveralls.io/github/antodippo).
Что я забыл?
Извините, недостаточно репутации, чтобы комментировать.
У меня такая же проблема. На travis ci я получаю процент покрытия моих файлов, но ничего на coveralls.io
Я заметил, что комбинезон говорит
Мы обнаружили, что это репо не в марке! Захватите код для встраивания справа, добавьте его в репозиторий, чтобы продемонстрировать покрытие кода, и, когда значок появится, нажмите кнопку обновления, чтобы удалить это сообщение.
У меня такое же сообщение, и я добавил значок. Похоже, это не будет синхронизироваться
вот что я сделал, чтобы починить
XML-файл cover_clover [Symfony \ Component \ Config \ Definition \ Exception \ InvalidConfigurationException] не доступен для чтения
и заставил комбинезон работать
—.travis yml
сценарий:
script:
- phpunit -c app/ src/ --coverage-clover build/logs/clover.xml
after_success:
- bin/coveralls -v
—phpunit.xml.dist
:
....
<logging>
<log type="coverage-html" target="build/coverage" title="coverage" charset="UTF-8" yui="true" highlight="true"lowUpperBound="35" highLowerBound="70"/>
<log type="coverage-clover" target="build/logs/clover.xml"/>
<log type="junit" target="build/logs/junit.xml" logIncompleteSkipped="false"/>
</logging>
...
-создал .coveralls.yml
файл в корне моего проекта SF:
coverage_clover: build/logs/clover.xml
json_path: build/logs/coveralls-upload.json
exclude_no_stmt: true
убедитесь, что у вас есть bin/coveralls
папка в корне вашего SF проекта
Проблема заключалась в том, что при такой конфигурации phpunit.xml.dist файл clover.xml был создан в /app/builds/logs/clover.xml. Поэтому я изменил скрипт phpunit в .travis.yml следующим образом:
phpunit --coverage-clover build/logs/clover.xml -c app
поэтому файл сгенерирован правильно в /app/builds/logs/clover.xml, и Coveralls теперь работает нормально.