覆盖率报告称C#.Net测试代码的覆盖率为零(用于Nunit测试)
我正在尝试使用OpenCover进行sonarqube分析,以获得C#测试项目(Nunit测试用例)的代码覆盖率。我在命令提示符下运行了下面的Executing cmd(从C#project solution文件夹&从C#project文件夹),但总是得到下面的executon输出。我从他那里得到了执行命令 我有没有做错什么,或者我需要添加更多的理由来获得报告 系统和软件详细信息:覆盖率报告称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
- 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
警告: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这样的开放源码工具可以为所有类型的测试库获取代码覆盖率。。。