我有一个Jenkins的工作,可以将一些测试报告(XML)复制到本地,并通过xUnit将它们转换为JUnit报告。
问题是没有失败或跳过的测试,但我总是得到
[xUnit] [INFO] - Check 'Failed Tests' threshold.
[xUnit] [INFO] - Check 'Skipped Tests' threshold.
[xUnit] [INFO] - Setting the build status to FAILURE
[xUnit] [INFO] - Stopping recording.
Finished: FAILURE
这是什么原因造成的?
在我以前的项目中,我运行了 3 个开发团队,其中包含 4 个解决方案,这些解决方案共同构成了一个集成平台,所有这些都在一个 Jenkins Master 上。
我有 2 个 DOS 批处理文件,它们保存在每个解决方案根目录的 JenkinsScripts/子目录中。 一个被称为CodeCoverage.bat(它确保OpenCover和ReportGenerator监视单元测试),而单元测试又称为RunUnitTests.bat传递参数。
在 RunUnitTests 中.bat具有许多参数的键行解析为:
packagesxunit.runner.console.2.1.0toolsxunit.console.exe <MyUnitTestProject.dll> -nologo -noshadow -nunit TestReportsTestResults.xml
因此,我将XUnit结果XML转换为NUnit结果XML,并使用NUnit插件发布结果。
自从我使用这种方法以来,将 XUnit 和 NUnit 3 XML 映射到 Jenkins 友好的 JUnit 的选项(在我的要求下)得到了改进。