我刚从Nuget手中接过NUnit,NUnit Runners和OpenCover。 NUnit部件在GUI和控制台模式下都运行良好。但在PowerShell中我似乎无法使OpenCover正常工作。根据各种使用示例,我最终得到了这个命令:
.\OpenCover.Console.exe -register:user -target:"..\NUnit.Runners.2.6.1\tools\nunit-console.exe" -targetargs:"/noshadow C:\Path\To\Tests.dll" -filter:+[*]* -output:coverage.xml
我从NUnit看到了开放的版权信息,但是NUnit告诉我:
致命错误:未指定输入
当然,遵循描述标志和诸如此类的标准帮助输出。然后,当然,OpenCover也会显示一个错误,表明没有任何东西与过滤器匹配,也没有结果。
所以我尝试直接运行NUnit:
..\NUnit.Runners.2.6.1\tools\nunit-console.exe /noshadow C:\Path\To\Tests.dll
它运行良好。测试通过,一切都很开心。考虑到文档和示例可能已经过时,我尝试将targetargs
直接组合到调用中:
.\OpenCover.Console.exe -register:user -target:"..\NUnit.Runners.2.6.1\tools\nunit-console.exe /noshadow C:\Path\To\Tests.dll" -filter:+[*]* -output:coverage.xml
但错误输出仍然相同。
我是否错过了正确使用OpenCover的内容?如何让它与NUnit控制台运行器正确交互?
答案 0 :(得分:0)
是否可以先设置当前工作目录?
我的过滤器参数也有引号,例如-filter:"+[*]*"
至少可能值得这样做......