.net-core - .Net Core 2.0 中的代码覆盖率

标签 .net-core code-coverage dotcover

如何在 .Net Core 2.0 中生成代码覆盖率?

我尝试了以下方法:

"TestPlatform\vstest.console.exe" --collect:"Code Coverage"

但我收到此错误消息:

Data collector 'Code Coverage' message: Cannot find CodeCoverage.exe.

我尝试了 dotCover 最新版本 2017.2,我能够在本地计算机上获取覆盖率,但是当在 TFS Build 中运行相同版本时,不会生成覆盖率信息。

我不确定 TFS 中的 NetCore Test 任务何时会获得代码覆盖率支持。

如何在 TFS 中发布 DotCover 的结果,以使用 DotCover 命令行生成 .Net Core 的覆盖率?

最佳答案

Coverlet是作为 NuGet 包提供的跨平台代码覆盖率。

只需将其添加到您的测试项目中即可:

dotnet add package coverlet.msbuild

并使用 dotnet test 命令作为参数来运行它:

dotnet test /p:CollectCoverage=true

支持的格式:

  • json(默认)
  • LCOV
  • 开盖
  • 科贝图拉

我在这里做了更详细的实现:.Net Core Unit Test and Code Coverage with Visual Studio Code

关于.net-core - .Net Core 2.0 中的代码覆盖率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46057586/

相关文章:

dotcover - 如何使用 dotCover 过滤器排除类构造函数?

c# - .NET Core 设置 - 最佳实践

Docker - RabbitMQ.Client.Exceptions.BrokerUnreachableException : 'None of the specified endpoints were reachable'

ios - 即使在生成 .gcda 和 .gcno 文件后,也未使用 coverstory 在 xcode 4.6 中处理代码覆盖率

c# - Dotcover 代码覆盖率 : Getting empty results from command line

resharper - 使用 ReSharper、MSpec 和 dotCover 进行测试覆盖率

visual-studio - 包含 NuGet 包中的 XML 文档

c# - 使 .net 核心控制台应用程序成为单个 .exe

ruby-on-rails - 找出 Rails 的测试覆盖率

azure - 封面覆盖率报告导致 Microsoft.VisualStudio.Coverage.VanguardException