在我们的持续集成过程中,我们使用 Jenkins、NUnit 和 OpenCover。
每个 Jenkins 作业都运行 NUnit 和 OpenCover,但 OpenCover 调用 NUnit 批处理文件以确定代码覆盖率;因此 NUnit 被执行两次。
例如,我们有第一批(简化的)批次:
nunit-console-x86 [PathToTestAssemblies] /xml=NunitResult.xml /noshadow /nodots /process=Separate
我们还有第二批 OpenCover:
OpenCover.Console.exe -target:"NUnit.bat" -output:"./OpenCoverResults.xml" -register -targetdir:".\bin" -coverbytest:*.dll
问题是 OpenCover 不提供 NUnit 结果(我之前命令中的 NunitResult.xml 文件)。因此,为了减少每个 Jenkins 作业的测试时间,我们希望取回 NUnit 结果,或者在 Jenkins 作业网页中找到一种使用 OpenCover 具有以下功能的方法:
- 每个 Jenkins 工作的最新测试结果,因此开发人员很容易看到最新结果。
- 测试结果趋势
有没有办法通过一次 NUnit 运行同时获得 NunitResult 和 OpenCover 结果?