无法将 Visual Studio 代码覆盖率与 Azure Functions 一起使用

Unable to use Visual Studio Code Coverage with Azure Functions

我正在使用 Visual Studio 15.3.5 和 Microsoft.NET.Sdk.Functions 1.0.6。

我可以 运行 测试正常,但是当我使用代码覆盖率分析测试时,包含 Azure Functions 的程序集未被分析。它没有列在代码覆盖汇编列表中。列出了其他程序集,仅省略了 Azure Functions 程序集。

有人成功了吗?

原因是对于新项目类型,默认 <DebugType> 是可移植的,这意味着生成的 pdb 不会包含 CodeCoverage 所需的信息。

更改方法如下:在您的 .csproj 中,将 <DebugType>full</DebugType> 添加到 <PropertyGroup>。例如你应该有:

<PropertyGroup>
  <TargetFramework>net461</TargetFramework>
  <DebugType>full</DebugType>
</PropertyGroup>

或者您可以从 VS 更改它:

  • 转到项目的属性
  • 转到构建选项卡,然后点击底部的“高级...”按钮
  • 有一个调试信息下拉菜单。将其设置为“完整”会使用必要的 属性
  • 更新项目