在我们的持续集成过程中,我们使用的是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获得以下功能:
是否可以通过单次运行NUnit同时获得NunitResult和OpenCover结果?
答案 0 :(得分:2)
我终于找到了NUnitResult.xml文件。事实上,当我将所有测试组件(例如bin)放入文件夹时,Nunit批处理将它放在根位置。
我认为这是因为我使用-targetdir args和" bin"表明OpenCover是我的集会。