【问题标题】:How to run coverlet on .NET projects not using the Sdk style projects?如何在不使用 Sdk 样式项目的 .NET 项目上运行 Coverlet?
【发布时间】:2019-07-18 14:37:52
【问题描述】:

我想试试coverlet,但我能找到的唯一例子是关于通过dotnet.exe 运行它。我的问题是我们的项目不使用 Sdk 样式,它们是针对 .NET 4.7.2 的旧 .NET 项目

我怎样才能和他们一起跑床单?

【问题讨论】:

    标签: .net code-coverage coverlet


    【解决方案1】:

    我正在针对 .NET Framework 4.6.1 构建 VS2017,并安装了 .NET Core SDK v2.1.511。我还没有想出不使用dotnet 来运行被套的方法,但这对我有用:

    在包管理器控制台中为您的所有测试项目运行Install-Package coverlet.msbuild仅限)。

    然后将类似以下任务的内容添加到您的构建脚本中:

    Task("Coverage")
        .IsDependentOn("Build")
        .Does(() =>
    {
        StartProcess("dotnet" , new ProcessSettings {
            Arguments = new ProcessArgumentBuilder()
                .Append("test")
                .Append("/p:CollectCoverage=true")
                .Append("/p:CoverletOutputFormat=opencover")
        });
    });
    

    通过将OpenCoverReportsPath = "**/*.opencover.xml" 添加到我的SonarBeginSettings,我现在可以在 SonarQube 中获得覆盖率报告。

    【讨论】:

      猜你喜欢
      • 2020-09-27
      • 1970-01-01
      • 2018-02-10
      • 2020-04-10
      • 1970-01-01
      • 1970-01-01
      • 2022-09-25
      • 2019-03-09
      • 1970-01-01
      相关资源
      最近更新 更多