Jenkins Cobertura插件如何运行以启用源代码查看?

Lan*_*ind 3 code-coverage cobertura jenkins jenkins-plugins

我正在尝试使用Jenkins构建一个Java单元测试运行的覆盖报告.我可以在高级别上获得报告,显示在类和方法级别上发生了覆盖,但是我可以查看源代码的报告的一部分不起作用.

Lan*_*ind 5

插件的输入是:

  • XML中的覆盖率报告
  • 源代码

要使用插件创建覆盖率报告:

  1. 将Cobertura安装到Jenkins.
  2. 使用后期构建创建Jenkins作业以生成Cobertura报告.在此步骤中,您将告诉它在Jenkins工作区中加载coverage报告的位置(通常名为coverage.xml).

在运行Jenkins作业之前 覆盖报告是以某种方式创建的(通常是某种构建脚本).该报告通常被大多数人的构建脚本命名为coverage.xml,并放置在Jenkin的工作空间中.

运行Jenkins作业时

当Jenkins作业运行时,Cobertura插件将读取coverage.xml并使用该元素来查找源代码.该插件将源代码复制到位于以下位置的缓存中:<Jenkins home>/jobs/<Jenkins job name>/<Cobertura>.

运行Jenkins工作后

通过导航到构建它的Jenkins作业来阅读覆盖率报告.如果在运行Jenkins作业期间成功复制源文件,则可以深入查看源代码并查看测试运行所涵盖的行.如果您看不到源代码级代码覆盖率:

  1. 检查cobertura缓存以查看代码是否存在.
  2. 检查缓存上的权限,以查看Jenkins服务器进程是否拥有该目录,并对该目录具有读取,写入和执行权限.
  3. 检查cobertura.xml文件并选择一个元素并检查它的"filename"属性,看看它的路径是否可以作为Cobertura缓存根目录的相对路径.

如果缓存具有旧信息,请删除缓存目录中的所有内容,然后重新运行Jenkins作业.