【译】Visual Studio Enterprise 中的代码覆盖率特性

  通过使用代码覆盖率功能,您可以发现您的测试需要改进的地方,并使您的软件更加健壮和可靠。在这篇文章中,我们将介绍我们在 Visual Studio Enterprise 2022 中引入的 Code Coverage Results 窗口的新特性。这些特性是:

  - 支持其他报告格式

  - 增强的报告合并

  - 性能增强

  - 覆盖率视图

  这些特性在 Visual Studio 的专业版或社区版中不可用。

支持其他报告格式

  我们现在支持覆盖率报告的其他格式。支持的格式如下:

  - 二进制(默认):.coverage(微软特殊二进制格式)

  - Cobertura: .cobertura.xml (Java代码覆盖工具的 XML 格式)

  - XML: .xml (微软 XML 格式)

  - CoverageXml: .coveragexml (微软 XML 格式)

  覆盖率报告也可以更改为支持的其他格式。

增强的报告合并

  我们已经更改了合并报告的方式。现在,如果项目使用相同的源代码,我们会将它们合并到报告中。例如,如果一个项目的目标是不同的框架,那么合并的报告将只有一个项目的条目,并将覆盖率数据添加在一起。

性能增强

  随着时间的推移,覆盖率报告操作变得越来越快。使用最新版本的 Visual Studio Enterprise 合并和打开报告的速度明显更快。

  该表显示了在不同版本的 Visual Studio 中打开报告所需的时间:

  以及报告合并的时间:

覆盖率视图

  在覆盖率窗口中添加了新的视图,以不同的方式查看覆盖率数据。它们提供了不同的视角来可视化覆盖率数据并改善开发人员的体验。

Margin Glyphs

  我们介绍了一种在编辑器中查看覆盖率的新方法。页边距符号在页边距中使用实心矩形表示已覆盖的行,使用条纹矩形表示部分已覆盖的行,使用开放矩形表示未覆盖的行。

Source View

  Source View 显示基于目录/文件结构而不是命名空间/类/方法结构的覆盖率数据。它在文件级别合并覆盖信息。

  当您的 C++ 代码和单元测试项目使用静态库时,它是有用的。对于项目视图,每个单元测试项目仅显示在其自己的测试中运行的代码的覆盖率。但是 Source View 结合了所有测试项目的覆盖运行。

变更集报告

  变更集报告过滤覆盖率报告,并仅显示当前本地 git 分支中所做更改的覆盖率统计信息。它帮助开发人员识别他们自己的变更的覆盖率状态,并改进新代码的代码覆盖率。

搜索

  搜索已经被添加到代码覆盖率结果窗口中。您可以使用不同的搜索参数进行搜索,以过滤报告。例如,显示块覆盖率小于80%的方法。

  您可以将视图的任何组合一起使用。例如,您可以只显示当前分支中块覆盖率低于80%的方法。覆盖率窗口和代码编辑器将显示过滤的结果。

小结

  我们很高兴您能使用我们新的代码覆盖率特性。我们相信这些特性将帮助您识别和改进解决方案的代码覆盖率。

  我们感谢您花时间报告问题/建议,并希望您在使用 Visual Studio 时继续给我们反馈,告诉我们您喜欢什么以及我们可以改进什么。您的反馈对于帮助我们使 Visual Studio 成为最好的工具至关重要!您可以通过开发者社区与我们分享反馈,通过发送反馈来报告问题或分享您的建议,推动对新功能或现有功能的改进。

  通过在 YouTube, Twitter, LinkedIn, Twitch 和 Microsoft Learn 上关注我们与 Visual Studio 团队保持联系。

 

原文链接:https://devblogs.microsoft.com/visualstudio/code-coverage-features-in-visual-studio-enterprise/

 

 
posted @ 2024-04-24 08:21  MeteorSeed  阅读(414)  评论(0编辑  收藏  举报