【问题标题】:Why doesn't Clover always report code coverage for my Java web app?为什么 Clover 不总是报告我的 Java Web 应用程序的代码覆盖率?
【发布时间】:2026-01-30 10:30:01
【问题描述】:

我正在使用 clover 代码覆盖率来查找代码覆盖率。我已经检测了我的代码并将其作为依赖项放置在我的 Web 项目中。

有时我的三叶草数据库会更新,有时却没有。为什么? Clover工具有bug吗?

我正在使用 Clover,我的代码是 Java。

有时我会看到在放置 cloverdb 的目录中创建了单独的文件。有时不会创建这些文件。这些文件的创建时间间隔是多少?

【问题讨论】:

    标签: java code-coverage clover


    【解决方案1】:

    Clover 仅对自上次运行测试后发生更改的代码运行测试。见this post on Clover's test optimization

    您是否更改了被测代码?可能是当数据库没有更新时,您没有更改任何有测试的代码。

    【讨论】:

    • @Paul.我创建了一个新的数据库。所以它应该对整个代码运行测试吗?我也在单独运行测试用例。意思是当我的服务器启动时,我们远程启动测试用例。就像触发 http requests.Also out 测试用例是使用 Silk 编写的测试是使用浏览器执行的
    • @Paul.你能给我这个吗?我只需要把我的 jar 连同 clover.jar 和 clover 许可证一起放在 lib 目录中吗?
    【解决方案2】:

    有时我会看到在放置 cloverdb 的目录中创建了单独的文件。有时不会创建这些文件。这些文件的创建时间间隔是多少?

    您提到您有一个网络项目。如果项目在应用程序服务器上运行并且您没有设置“线程”或“间隔”刷新策略并且您没有在测试结束时关闭服务器,那么将不会生成覆盖文件,因为默认情况下它发生在 JVM 终止时。

    见:

    【讨论】:

      最近更新 更多