如何使用Jenkins Pipeline发布NUnit测试结果?

14
尝试使用Jenkins Pipeline时,我遇到了如何发布NUnit测试结果的问题。
在Pipeline脚本中指定以下命令,我可以运行测试:
stage 'Test'
    bat '"C:\\Program Files (x86)\\NUnit 2.6.4\\bin\\nunit-console-x86.exe" "ProjectName\\bin\\Release\\UnitTests.net.dll"'

但是如何让Jenkins“发布”测试结果并不明显。Snippet Generator只建议使用junit,但似乎那样做并不起作用。

2个回答

17

我使用的是 Nunit 插件版本 0.21,并且成功地通过该插件发布了测试结果。

stage("PublishTestReport"){
     nunit testResultsPattern: 'TestResult.xml'
     }

在上面的例子中,TestResult.xml位于Jenkins工作区的根目录下。


目前看来,问题已经得到解决。 - Ola Eldøy
@OlaEldøy,你能接受这个答案吗?这有助于判断问题是否已经得到解答。 - Johannes
我真希望他们能够把这个放在他们的插件页面的最前面 - 感谢你在这里添加它! - J Trana

14

调查 Jenkins 的 NUnit 插件引导我进入这个问题,在那里我找到了解决方案:

step([$class: 'NUnitPublisher', testResultsPattern: 'TestResult.xml', debug: false, 
                 keepJUnitReports: true, skipJUnitArchiver:false, failIfNoResults: true])

将这个内容加入到管道脚本中对我很有帮助!

然而,以下内容似乎也应该可以正常工作(但目前显然不行):使用片段生成器,选择这个:

step: General Build Step
Publish NUnit test result report

这将在流水线脚本中生成以下内容:

step <object of type hudson.plugins.nunit.NUnitPublisher>

这个失败了!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接