首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CodeCov找不到报告

CodeCov找不到报告
EN

Stack Overflow用户
提问于 2019-10-23 15:13:12
回答 2查看 1.7K关注 0票数 4

我试图让codecov运行并处理Jacoco为我的多构建Java Gradle项目生成的报告。然而,当我运行codecov脚本(bash <(curl -s https://codecov.io/bash))时,我得到了以下输出:

代码语言:javascript
复制
x> No CI provider detected.
    Testing inside Docker? http://docs.codecov.io/docs/testing-with-docker
    Testing with Tox? https://docs.codecov.io/docs/python#section-testing-with-tox
    project root: .
    Yaml found at: .codecov.yml
==> Running gcov in . (disable via -X gcov)
==> Python coveragepy not found
==> Searching for coverage reports in:
    + .
--> No coverage report found.
    Please visit http://docs.codecov.io/docs/supported-languages

我已经验证了这些报告是由build/reports/jacoco/codeCoverageReport中的jacoco创建的,并且xml实际上是存在的。

我按照指南这里(吉特布)设置了jacoco报告。我的gradle代码和github上的代码的主要区别是我排除了xml.destination "${buildDir}/reports/jacoco/report.xml",因为Gradle将无法处理包含它的代码。

.codecov.yml

代码语言:javascript
复制
codecov:
  require_ci_to_pass: true

coverage:
  precision: 3
  round: up
  range: "70...100"

  status:
    project: true
    patch: yes
    changes: no

parsers:
  gcov:
    branch_detection:
      conditional: yes
      loop: yes
      method: yes
      macro: no

comment:
  layout: "reach,diff,flags,tree"
  behavior: default
  require_changes: false
EN

回答 2

Stack Overflow用户

发布于 2019-10-24 03:40:05

我想通了。运行bash <(curl -s https://codecov.io/bash) -h列出了我可以使用的选项,其中我发现有一个-f <file>选项可以指定要使用的确切文件。

从这里开始,我只需在我的travis文件中使用它来正确地上传:

bash <(curl -s https://codecov.io/bash) -f build/reports/jacoco/codeCoverageReport/codeCoverageReport.xml

票数 8
EN

Stack Overflow用户

发布于 2020-12-26 14:48:59

我在java15中使用maven

添加到pom.xml中(在build部分下):

代码语言:javascript
复制
<plugin>
    <groupId>org.jacoco</groupId>
    <artifactId>jacoco-maven-plugin</artifactId>
    <version>0.8.6</version>
    <executions>
        <execution>
            <goals>
                <goal>prepare-agent</goal>
            </goals>
        </execution>
        <execution>
            <id>report</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>report</goal>
            </goals>
        </execution>
    </executions>
</plugin>

添加到.travis.yml中:

代码语言:javascript
复制
script:
   - mvn clean package

after_success:
   - bash <(curl -s https://codecov.io/bash)

对我来说效果很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58526042

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档