尝试生成代码覆盖率统计信息的dotnet Cli错误

时间:2018-08-23 14:26:11

标签: visual-studio unit-testing .net-core command-line-interface cobertura

我正在运行以下命令来运行.net Core测试:

dotnet test

运行正常。我现在想生成代码覆盖率统计信息,因此在阅读本文之后,我运行了此代码:

dotnet test AI.Core.Tests.csproj 
  /p:CollectCoverage=true 
  /p:CoverletOutputFormat=cobertura 
  /p:CoverletOutput=TestResults\Coverage

我从此命令获得以下输出:

C:\Users\sp4_rm\.nuget\packages\coverlet.msbuild\2.2.1\build\netstandard2.0\coverlet.msbuild.targets(23,5): error : 
  Index was out of range. Must be non-negative and less than the size of the collection. 
  [C:\Users\sp4_rm\Desktop\EVO\AI.Core\src\Tests\AI.Core.Tests.csproj]

 C:\Users\sp4_rm\.nuget\packages\coverlet.msbuild\2.2.1\build\netstandard2.0\coverlet.msbuild.targets(23,5): error : 
  Parameter name: index 
  [C:\Users\sp4_rm\Desktop\EVO\AI.Core\src\Tests\AI.Core.Tests.csproj]

请参见下面的屏幕截图:

enter image description here

有人在运行此命令吗?我在做什么错了?

1 个答案:

答案 0 :(得分:1)

好吧,这是由于一个男生错误导致的,在我的示例项目中实际上没有任何代码可以测试(或测试用例进行测试)!在主要项目中添加几个类,并在测试项目中添加几个测试可以解决此问题! (以防万一与我做同样的事情!)