我正在使用 jenkins 的管道插件,我想为每次运行生成代码覆盖率报告并将其与管道 ui 一起显示。是否有我可以使用的插件(例如 Cobertura,但管道似乎不支持它)?
最佳答案
有一种方法可以添加管道步骤来发布您的覆盖率报告,但它不会显示在 BlueOcean 界面下。它会在正常的 UI 中正常显示。
pipeline {
agent any
stages {
...
}
post {
always {
junit '**/nosetests.xml'
step([$class: 'CoberturaPublisher', autoUpdateHealth: false, autoUpdateStability: false, coberturaReportFile: '**/coverage.xml', failUnhealthy: false, failUnstable: false, maxNumberOfBuilds: 0, onlyStable: false, sourceEncoding: 'ASCII', zoomCoverageChart: false])
}
}
}
请注意,Cobertura 插件的参数之一是它将使用的 XML(示例中为“**/coverage.xml”)。
如果您使用的是 python,您将需要使用以下内容:
nosetests --with-coverage --cover-xml --cover-package=pkg1,pkg2 --with-xunit test
关于jenkins - Jenkins 管道作业的 Cobertura 代码覆盖率报告,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36918370/