由于C#生态系统3不再支持Gallio,所以我现在正在更改Sonar设置,我已经通过使用下面的命令使用OpenCover成功导入了单元测试覆盖率。
"C:\Program Files (x86)\OpenCover\OpenCover.Console.exe" -register -target:"c:\Program Files (x86)\NUnit 2.6.3\bin\nunit-console-x86.exe" -targetargs:"d:\Sonar\MyTest.dll /noshadow /framework=net-4.0" -output:"d:\Deploy\Sonar\Coverage.xml" "-filter:+[*]* -[*]Test"使用此命令,我只获得了单元测试覆盖率,但我也希望看到失败和成功测试的数量。我想我可以通过/result选项来实现这一点
"C:\Program Files (x86)\OpenCover\OpenCover.Console.exe" -register -target:"c:\Program Files (x86)\NUnit 2.6.3\bin\nunit-console-x86.exe" -targetargs:"d:\Deploy\Sonar\MyTest.dll /noshadow /framework=net-4.0 /result=tests.xml"此命令返回一个包含运行测试信息的xml,但是有任何方法将该xml导入SonarQube吗?或者这不是支持的?
目前,我使用以下命令导入Coverage.xml文件:
sonar.cs.opencover.reportsPaths=D:/Deploy/Sonar/Coverage.xml是否有类似的属性来导入带有测试结果的tests.xml文件?
发布于 2014-10-30 09:41:47
通过下面的http://www.codewrecks.com/blog/index.php/2009/07/19/integrate-nunit-test-into-a-tfs-build/站点,我能够使用XSLT转换将OpenCover测试结果的输出转换成.trx格式。转换之后,我只使用了默认的导入功能
sonar.cs.vstest.reportsPaths=MyTestRestultFile.trx发布于 2017-10-24 09:07:38
OpenCover现在得到了SonarQube的官方支持,请看SonarQube文档。可以传递使用命令行参数生成的XML报表OpenCover的位置。
/d:sonar.cs.opencover.reportsPaths="%path%\%report_file%"其中,%path%是在其中生成报表文件的文件夹,%report_file%是OpenCover XML报告的文件名。
发布于 2014-10-24 06:44:01
从http://docs.codehaus.org/display/SONAR/C%23+Plugin的文档中,您似乎只能导入MSTest格式的单元测试执行报告。
https://stackoverflow.com/questions/26535814
复制相似问题