3

我在 Github 上有一个存储库,这是一个带有 PHPunit 测试套件(https://github.com/antodippo/ccmusicsearch)的 PHP Symfony 应用程序,并且 Travis CI 每次推送时都会正确检查构建(https://travis-ci .org/antodippo/ccmusicsearch/builds)。

我将工作服帐户链接到我的 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>

但工作服剧照说没有构建(https://coveralls.io/github/antodippo)。

我忘记了什么?

4

2 回答 2

1

抱歉没有足够的声誉来发表评论。我有同样的问题。在 travis ci 上,我得到了文件的覆盖率,但在 coveralls.io 上什么也没有,我注意到工作服在说

我们检测到此 repo 没有标记!抓住右侧的嵌入代码,将其添加到您的存储库以展示您的代码覆盖率,当徽章活动时,点击刷新按钮以删除此消息。

我有同样的信息,我添加了徽章。好像不会同步

编辑 :

在这里我做了什么来修复我的

[Symfony\Component\Config\Definition\Exception\InvalidConfigurationException] coverage_clover XML 文件不可读

并使工作服工作

-.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 项目的根目录

于 2016-01-24T22:34:29.540 回答
0

问题在于,使用 phpunit.xml.dist 配置,clover.xml 文件是在 /app/builds/logs/clover.xml 中创建的。所以我以这种方式更改了 .travis.yml 中的 phpunit 脚本:

phpunit --coverage-clover build/logs/clover.xml -c app

因此该文件在 /app/builds/logs/clover.xml 中正确生成,并且 Coveralls 现在可以正常工作。

于 2016-01-26T17:15:25.273 回答