VS社区版 使用 OpenCover 获取测试代码覆盖率
注:暂不支持VS2017
Visual Studio 2015 社区版没有集成代码覆盖率的功能,所以想在VS社区版中获取单元测试的代码覆盖率等数据,需要使用到插件 OpenCover。
下载 OpenCover
下载地址:https://github.com/OpenCover/opencover/releases
OpenCover 是实现统计代码覆盖率等功能的一个插件,使用它的主要方式是命令行参数。在进入上述下载页面后,下载最新 Release 的 Zip 包即可,如下图所示:

下载 OpenCover.UI 插件
下载地址:https://marketplace.visualstudio.com/items?itemName=jamdagni86.OpenCoverUI#overview
OpenCover.UI 是 OpenCover 的可视化插件,对于不习惯命令行或者仅需要 OpenCover 简单功能的新手非常友好。
下载完成后可以得到一个名为 OpenCover.UI.vsix的安装文件,双击它进行安装,可以在VS中增加OpenCover的选项卡。成功安装后应该会在VS中看到多了一个选项卡,如下:

在VS中设置 OpenCover 的路径
在安装完 OpenCover 的 UI 界面后,需要为其配置 OpenCover 的路径。在VS 中 依次选择 工具-选项 或者是 Tool-Option,示意图如下:

在弹出的菜单页面中找到 OpenCover.UI Options选项并点击。在菜单页面右侧找到OpenCover Path的提示,并点击最右侧的路径选择按钮设置 OpenCover 的路径。这里的路径就是第一步安装的OpenCover中 OpenCover.Console.exe的路径。如下图:

重启 VS 并进行单元测试
设置成功后,重启 VS并打开要统计代码覆盖率的项目。单击菜单中的 OpenCover,我们这里需要用到的是两个菜单项:一项是Open Cover Test Explorer,另一项是Open Cover Results。前者是运行测试的窗口,后者是结果展示的窗口。

先点击Open Cover Test Explorer ,在单元测试函数上右键,点击Cover with OpenCover的按钮运行测试。如下图:
注:OpenCover.UI 插件会在打开工程时自动扫描单元测试函数。所以如果在工程打开后增加了单元测试函数,重新打开即可更新OpenCover的信息。

此时点击OpenCover Results 即可看到覆盖率等信息。覆盖率指标示意图:

在对应的函数中也会有相应的覆盖提示,绿色表示覆盖到了,红色表示未覆盖。

VS社区版 使用 OpenCover 获取测试代码覆盖率的更多相关文章
- 腾讯产品快速尝鲜,蓝鲸智云社区版V6.1灰度测试开启
这周小鲸悄悄推送了社区版V6.1(二进制部署版本,包含基础套餐.监控日志套餐),没过一天就有用户来问6.1的使用问题了.小鲸大吃一鲸,原来你还是爱我的. (更新版)
官方安装过程如下图所示 1.安装前 下载OpenAcc社区版 1,目前为止的最新版,平台是Linux,选择Linux x86-64. 我的服务器系统是CentOs 下载地址链接:https://www ...
- Centos 7 搭建蓝鲸V4.1.16社区版
第一次搭建蓝鲸平台,参考了蓝鲸社区的官方搭建文档. 友情链接:蓝鲸智云社区版V4.1.16用户手册 搭建时遇到了不少的坑,这里做一个详细的安装梳理 主机硬件要求 官方的推荐如下: 在本地用VMware ...
- Centos 7 搭建蓝鲸V4.1.16稳定社区版
在本地用VMware模拟了三台主机 准备至少3台 CentOS 7 以上操作系统的机器,保证三台虚拟机都可以上网 最低配置:2核4G(我用的是这个) 建议配置: 4核12G 以上 192.168.16 ...
- UOJ社区版安装多个Judger
目录 声明 在同一台机器上安装 在不同机子上安装 声明 本文档非官方文档,为我试坑的经验总结. 本文编写时间 2019.11.04 ,并不一定会随UOJ更新而更新. 由于UOJ需要用SVN传题,并不那 ...
- centos 7 安装 Docker Engine-CentOS 社区版
获取Docker Engine-CentOS社区: https://docs.docker.com/install/linux/docker-ce/centos/ 1.操作系统要求 1.1 要安装 D ...
- VS2015企业版,社区版,专业版详细对比
VS2015 微软出了3个大版本,其实在前天晚上就放出了三个版本的对比说明.,但是昨天挂掉了..今天特意去看了..截取了自己觉得比较重要的分享一下. 首先我们最常用的 诊断调试工具 其次测试工具(区别 ...
随机推荐
- moand的编程学形式:一个(高阶)类型包办程序的组织--类型关乎复合
moand的编程学形式:一个(高阶)类型完成程序的组织. 将类型系统的转换与高阶函数进行了融合,相对于链式编程而言. 类型关乎复合 范畴论与箭头的复合有关.但是并非任意两个箭头都可以复合.一个箭头的目 ...
- JavaScript无阻塞加载具体方式
将脚本放在底部.\还是放在head中,用以保证在js加载前,能加载出正常显示的页面.\<script>标签放在\前 成组脚本:由于每个\<script>标签下载时阻塞页面解析过 ...
- linux 的常用命令---------第四阶段
权限管理 “4” “r” → 读权限: 查看文件内容: 是否能够列出目录结构. “2” “w” → 写权限: 编辑文件内容: 是否能够创建.删除.复制.移动目录. “1” “x” → 执行权限: 对二 ...
- 利用RMAN恢复整个数据库
利用RMAN恢复整个数据库案例一 适合场合:恢复的目录一致,同时备份的过程中有归档日志 恢复的数据库目录和down机的数据库一致,还有一个就是RMAN备份的时候已经备份了归档日志. 备份脚本: run ...
- 一兄弟把/etc/init.d/functions误删除了,这是多么悲催的节奏啊;
RPM resource /lib/lsb/init-functions /lib/lsb/init-functions vs. /etc/init.d/functions in init scrip ...
- zabbix 客户端添加自定义参数
0.zabbix客户端配置文件 server和serveractive都需要配置 1.配置自定义参数脚本文件 zabbix_agent.conf中UserParameter字段,可以配置多行 User ...
- JS 点击元素发ajax请求 打开一个新窗口
JS 点击元素发ajax请求 打开一个新窗口 经常在项目中会碰到这样的需求,点击某个元素后,需要发ajax请求,请求成功以后,开发需要把链接传给前端(或者说请求成功后打开新窗口),前端需要通过新窗口打 ...
- Vue 下拉列表 组件模板
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Apple 相关官方地址
https://developer.apple.com/download/more/ 证书制作地址: https://developer.apple.com/account/ios/profile/ ...
- 微信web开发的上传图片js接口
$('.chooseImage').click(function(){ wx.chooseImage({ count: pic_num, // 默认9,大于9也是显示9 sizeType: ['com ...