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

Ola*_*døy 12 nunit jenkins jenkins-pipeline

尝试使用漂亮的Jenkins管道,我在查找如何发布NUnit测试结果时遇到了问题.

我可以通过在管道脚本中指定以下命令来运行测试:

stage 'Test'
    bat '"C:\\Program Files (x86)\\NUnit 2.6.4\\bin\\nunit-console-x86.exe" "ProjectName\\bin\\Release\\UnitTests.net.dll"'
Run Code Online (Sandbox Code Playgroud)

但如何让詹金斯"发布"测试结果并不明显.片段生成器只建议junit,这似乎不起作用.

小智 14

我使用了nunit插件版本0.21并且能够使用发布结果

stage("PublishTestReport"){
     nunit testResultsPattern: 'TestResult.xml'
     }
Run Code Online (Sandbox Code Playgroud)

(在上面的例子中,TestResult.xml位于jenkins工作空间的根目录下)


Ola*_*døy 13

调查Jenkins的NUnit插件引发了我的问题,在那里我找到了解决方案:

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

将此添加到管道脚本对我有用!

但是,似乎以下内容也应该有效(但目前,显然,它没有):使用Snippet Generator,选择:

step: General Build Step
Publish NUnit test result report
Run Code Online (Sandbox Code Playgroud)

这将在管道脚本中生成以下内容:

step <object of type hudson.plugins.nunit.NUnitPublisher>
Run Code Online (Sandbox Code Playgroud)

这失败了!