通过使用代码覆盖率功能,您可以发现您的测试需要改进的地方,并使您的软件更加健壮和可靠。在这篇文章中,我们将介绍我们在 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/

 

【译】Visual Studio Enterprise 中的代码覆盖率特性的更多相关文章

  1. 【广州.NET社区推荐】【译】Visual Studio 2019 中 WPF & UWP 的 XAML 开发工具新特性

    原文 | Dmitry 翻译 | 郑子铭 自Visual Studio 2019推出以来,我们为使用WPF或UWP桌面应用程序的XAML开发人员发布了许多新功能.在本周的 Visual Studio ...

  2. 【译】Visual Studio 2019 中 WPF & UWP 的 XAML 开发工具新特性

    原文 | Dmitry 翻译 | 郑子铭 自Visual Studio 2019推出以来,我们为使用WPF或UWP桌面应用程序的XAML开发人员发布了许多新功能.在本周的 Visual Studio ...

  3. GitHub在Visual Studio 2015中获得TFS/VSO同等地位

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 在Visual Studio 2015中微软为GitHub提供了扩展插件,从而让GitHub ...

  4. Visual Studio 2013 Web开发新特性

    微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Server 2013. ...

  5. 在Visual Studio 2012中使用VMSDK开发领域特定语言(二)

    本文为<在Visual Studio 2012中使用VMSDK开发领域特定语言>专题文章的第二部分,在这部分内容中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计.定制.调试.发布以 ...

  6. 在Visual Studio 2012中使用VMSDK开发领域特定语言(一)

    前言 本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容.在第一部分中,将对 ...

  7. Visual Studio Code中文文档(一)-快速入门

    Visual Studio Code是一个轻量级但是十分强大的源代码编辑器,重要的是它在Windows, OS X 和Linux操作系统的桌面上均可运行.Visual Studio Code内置了对J ...

  8. ASP.NET 5系列教程 (五):在Visual Studio 2015中使用Grunt、Bower开发Web程序

    基于Visual Studio 2015,你可以: 方便的管理前端包,如jQuery, Bootstrap, 或Angular. 自动运行任务,如LESS.JavaScript压缩.JSLint.Ja ...

  9. 在 Visual Studio Code 中使用 PoweShell - CodeShell

    一直希望在 Visual Studio Code 中使用 PowerShell,插件 CodeShell 提供了对于 PowerShell 的支持. 安装 首先按 F1,打开命令窗口,输入安装插件的命 ...

  10. 在 Visual Studio 2013 中创建 ASP.NET Web 项目(0):专题导航 [持续更新中]

    写在前面的话 随着 Visual Studio 2013 的正式推出,ASP.NET 和 Visual Studio Web 开发工具 也发布了各自的最新版本. 新版本在构建 One ASP.NET ...

随机推荐

  1. STM32 启动代码分析

    PS:要转载请注明出处,本人版权所有. PS: 这个只是基于<我自己>的理解, 如果和你的原则及想法相冲突,请谅解,勿喷. 前置说明   本文作为本人csdn blog的主站的备份.(Bl ...

  2. 编码ascii码,unicode码,utf-8编码

    1. ASCII ASCII 只有127个字符,表示英文字母的大小写.数字和一些符号,但由于其他语言用ASCII 编码表示字节不够,例如:常用中文需要两个字节,且不能和ASCII冲突,中国定制了GB2 ...

  3. 写了个简单爬虫,分析 Boss 直聘自动驾驶岗位

    两年前,朋友想知道 Boss 直聘上关于自动驾驶的岗位有哪些 ,于是,笔者写了一个简单的爬虫 crawler-boss ,将岗位的信息收集起来. 这篇文章,笔者想分享爬虫 crawler-boss 的 ...

  4. [深度学习] 计算机视觉低代码工具Supervision库使用指北

    Supervision库是一款出色的Python计算机视觉低代码工具,其设计初衷在于为用户提供一个便捷且高效的接口,用以处理数据集以及直观地展示检测结果.Supervision库的官方开源仓库地址为: ...

  5. JavaScript知识总结 异步编程篇

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 1. 异步编程的实现方式? JavaScript中的异步机制可以分为以下几种: 回调函数 的方式,使用回调函数的方式有一个缺点是,多个回调 ...

  6. verilog注释及vscode插件terosHDL

    模型功能 实现代码的注释的方法 基于vscode的文档自动生成 模型框图 `timescale 1ns / 1ps /* */ // ********************************* ...

  7. Unity最新一键清理Prefab中所有MissingComponent

    因为老的API  Properties.DeleteArrayElementAtIndex(propertyIndex);提示没权限修改, 而unity提供了新的API  GameObjectUtil ...

  8. #莫比乌斯反演#BZOJ 2694 LCM

    题目 多组询问求 \[\sum_{i=1}^n\sum_{j=1}^m{|\mu(\gcd(i,j))|*lcm(i,j)}\pmod {2^{30}} \] \(T\leq 10^4,n,m\leq ...

  9. vue3中router配置中的children怎么用

    在Vue 3中,当你使用Vue Router创建路由配置时, children属性允许你为某个路由定义嵌套路由.这意味着你可以在父路由下设置子路由,从而构建出具有层级结构的URL路径. 这里是一个基本 ...

  10. 【直播回顾】OpenHarmony知识赋能五期第五课——多媒体子系统之视频解读

    5月19日晚上19点,知识赋能第五期第五节课<OpenHarmony标准系统多媒体子系统之视频解读>,在OpenHarmony开发者成长计划社群内成功举行. 本期课程,由深开鸿资深技术专家 ...