【问题标题】:How do I map code coverage reports to a diff file?如何将代码覆盖率报告映射到差异文件?
【发布时间】:2012-07-21 12:45:09
【问题描述】:

我有从 PhpUnit 运行的代码覆盖率,我可以在 Git 中生成一个差异文件,它将向我展示即将发布的内容。

我将如何将一个映射到另一个,以便我可以说我们即将发布的代码已包含在我们的测试中?

理想情况下,这可以作为 Jenkins 中的构建步骤自动运行。

【问题讨论】:

标签: phpunit code-coverage


【解决方案1】:

在通过 Ant / maven 构建运行 phpunit 测试之前,请运行 phpscript。在这个 php 脚本中,将要发布的 git 文件中指定的每个文件与匹配的单元测试一起复制到一个临时目录。当然这需要你使用proper naming conventions and structure for unit tests。在临时目录上运行 phpunit

-application
  -app
  -tests
-temp
  -app
  -tests

当您在构建文件中运行 phpunit 时,请包含一个 clover 报告

phpunit --coverage-clover="clover.xml" temp/tests 

在 Jenkins 中,如果 clover.xml 不满足指定的覆盖率百分比,您可以将构建标记为不稳定。

这应该可行。让我知道结果如何。

【讨论】:

  • 这行不通,因为来自 diff 的文件可能依赖于来自 diff 的文件 not(不是更改/创建),因此复制的文件将无法链接。
猜你喜欢
  • 2018-09-02
  • 1970-01-01
  • 2021-09-27
  • 2017-03-17
  • 2014-08-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-10
相关资源
最近更新 更多