覆盖度统计及测试流程

覆盖度测试整体流程:

这里写图片描述

1、安装
(1)获取路径: http://www.ncover.com/info/download
(2)解压并安装程序包
这里写图片描述

2、监控
(1)点击NCover Explorer图标,进入运行界面
这里写图片描述
(2)点击Run Coverage按钮,打开Run NCover 对话框
这里写图片描述
(3)配置
A. Project Name : 输入工程名(例如:ihou30.KickMuseum.Coverage_build#3101)
B. 若监控进程应用(.exe),则勾选Cover an application,并选择进程运行路径
C. 若监控IIS应用,则勾选Cover a service,并取消Cover an application勾选
D. 点击Run NCover Now 开始监控
这里写图片描述

这里写图片描述
3、统计
(1)完成接口测试后,点击Stop Coverage ,开始生成loading coverage data数据。
点击Trends & Statistics,打开趋势静态图。
这里写图片描述
(2)在Explorer栏选择接口对应API,查看覆盖度统计信息
这里写图片描述
这里写图片描述
数据统计项说明:

A.  Symbol Coverage为 标志覆盖度
B.  Method Coverage为 方法覆盖度
C.  Branch Coverage为 分支覆盖度
D.  Cyclomatic Complexity为 圈复杂度
E.  Num. Classes 为 类文件数
F.  Num. Methods为 方法数

4、分析
(1)测试用例总数 VS 代码分支数

以踢馆数据中心接口监控为例:
代码分支数(829) — 测试用例总数(529) =  300
假设接口代码覆盖业务逻辑完全100%,则说明测试用例覆盖不完全,仅覆盖63%。理论上讲,测试用例总数  应大于等于 代码分支数 .

备注:其中代码分指数可通过查看Branch Coverage 获知
(2)测试用例 VS API覆盖度
以数据中心接口监控为例:
在Explorer栏选择已测接口对应API,查看覆盖度。若低于100%,则关联接口工程代码进一步分析。
Step 1 :从SVN 上Check 接口工程代码到本地
这里写图片描述
Step 2 :根据 .cs文件路径关联代码文件
这里写图片描述
其中,蓝色背景表示代码行已执行,红色背景表示代码行未执行。若不清楚测试接口与代码API关系,可查看接口Wiki说明文档。
Step 3 :根据代码注释,结合业务逻辑,分析遗漏分支
覆盖度不完全常见原因分析
 用例问题
(1) 用例遗漏
A. 接口所有返回码 未覆盖完全
B. 接口对象初始化为NULL 的 情况 未覆盖完全
C. 接口Exception异常处理 的 情况 未覆盖完全
D. 接口参数边界值 的 情况 未覆盖完全
(2) 用例冗余
存在多条用例验证同一业务逻辑或异常的情况。
 代码问题
(1) 代码冗余
(2) 代码模块已下线
(3) 代码异常未捕获处理
(4) 自定义参数未使用
5、根据分析结果完善测试用例,重新统计覆盖度
这里写图片描述
 请各位童鞋谨记:
 在测试过程中,发现代码覆盖度为100%的接口仍存在缺陷,说明代码覆盖度不能作为代码质量评价的标准,可以作为需求覆盖度的评价标准,即用例设计及用例执行质量评价标准。

原文地址:https://www.cnblogs.com/qwop/p/6637391.html