Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
覆盖率报告称C#.Net测试代码的覆盖率为零(用于Nunit测试)_C#_Nunit_Opencover_Sonarqube5.6_Vstest.console.exe - Fatal编程技术网

覆盖率报告称C#.Net测试代码的覆盖率为零(用于Nunit测试)

覆盖率报告称C#.Net测试代码的覆盖率为零(用于Nunit测试),c#,nunit,opencover,sonarqube5.6,vstest.console.exe,C#,Nunit,Opencover,Sonarqube5.6,Vstest.console.exe,我正在尝试使用OpenCover进行sonarqube分析,以获得C#测试项目(Nunit测试用例)的代码覆盖率。我在命令提示符下运行了下面的Executing cmd(从C#project solution文件夹&从C#project文件夹),但总是得到下面的executon输出。我从他那里得到了执行命令 我有没有做错什么,或者我需要添加更多的理由来获得报告 系统和软件详细信息: OS:Windows7 64位 MsBuild版本:14 Visual Studio:VS2015 Openco

我正在尝试使用OpenCover进行sonarqube分析,以获得C#测试项目(Nunit测试用例)的代码覆盖率。我在命令提示符下运行了下面的Executing cmd(从C#project solution文件夹&从C#project文件夹),但总是得到下面的executon输出。我从他那里得到了执行命令

我有没有做错什么,或者我需要添加更多的理由来获得报告

系统和软件详细信息:

  • OS:Windows7 64位
  • MsBuild版本:14
  • Visual Studio:VS2015
  • Opencover版本:4.6.166.0
  • Nunit版本:2.4.8.0(仅具有Nunit核心、Nunit框架和Nunit核心接口库dll)
  • SonarQube版本:5.6.5
  • SonarC#版本:5.10.0.1411
  • 用于MSBuild版本的声纳扫描仪:2.2.0.24
执行cmd: “C:\ProgramFiles(x86)\OpenCover\OpenCover.Console.exe” -输出:“SolutionFolder.sonarqube\opencover.xml”-注册:用户-目标:“C:\Program Files(x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe”-目标文件:“SolutionFolder\UnitTestProject1\bin\Debug\UnitTestProject1.dll”

执行输出: 正在执行:C:\Program Files(x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe Microsoft(R)测试执行命令行工具版本14.0.25420.1 版权所有(c)微软公司。版权所有。 正在启动测试执行,请稍候。。。 警告:使用隔离模式运行测试,这是有效的平台X86和.Net Framework:Framework35测试运行设置所要求的。使用/inIsolation参数可抑制此警告。
警告:SolutionFolder\UnitTestProject1\bin\Debug\UnitTestProject1.dll中没有可用的测试。请确保已安装的测试发现者和执行者、平台和框架版本设置适当,然后重试。 信息:此外,如果测试发现程序和执行程序作为vsix扩展安装在计算机上,并且您的安装支持vsix扩展,则可以尝试指定“/UseVsixExtensions”命令。示例:vstest.console.exe myTests.dll/UseVsixExtensions:true 承诺。。。 已访问课程0,共1(0) 已访问方法0/22(0) 访问点117(0)中的第0点 已访问的分支机构0/22(0) ==备选结果(包括所有方法,包括没有相应来源的方法)==== 备选访问类0,共1(0) 替代方法0/23(0)


注意:在覆盖率输出报告中,我的覆盖率仅为零。

“确保安装的测试发现者和执行者、平台和框架版本设置适当,然后重试”您的命令行没有说明如何使用NUnit测试适配器。如果您没有使用VS覆盖率,为什么要运行vstest-console.exe?运行nunit控制台。@Charlie谢谢您的回复。。。以前我使用gallio(它有nunit、mstest和so的适配器)获取代码覆盖率报告,但在VS2015Gallio中构建代码时失败。gallio无法解析VS2015中构建的PDB文件。有没有像gallio这样的开放源码工具可以为所有类型的测试库获取代码覆盖率。。。