已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
测试覆盖率工具 EclEmma使用培训,测试小组,20080604,Mantis使用培训,2,目的,提高单元测试质量 ,从而提高项目整体开发效率和软件质量,Mantis使用培训,3,培训内容,术语介绍 EclEmma介绍 EclEmma使用 安装 获得测试覆盖率 查看结果 合并结果 导出报告 导入数据 高级特性,Mantis使用培训,4,术语介绍,测试覆盖率 测试代码对被测功能代码的覆盖程度 测试覆盖率实现技术,Mantis使用培训,5,测试覆盖率实现技术,Instrumentation:代码注入,在产品代码的关键位置插入统计代码,从而获得测试覆盖率数据 Class Instrumentation: 把统计代码插入编译好的.class文件 Source Instrumentation:把统计代码插入源代码并编译成新的.class文件 Custom JVM:在JVM中把统计代码插入.class。测试覆盖率分析可以在JVM执行测试代码的过程中完成,EclEmma 为Class Instrumentation方式,不会改变项目文件中的class文件,Mantis使用培训,6,培训内容,术语介绍 EclEmma介绍 EclEmma使用 安装 Coverage运行模式 查看结果 合并结果 导出报告 导入数据 高级特性,Mantis使用培训,7,EclEmma介绍,Eclipse插件 工作原理:Class Instrumentation(把统计代码插入编译好的.class文件) 测试覆盖率指标,Mantis使用培训,8,测试覆盖率指标,行覆盖率 部分行覆盖:ab?a:b,基本语句块覆盖率 基本语句块:没有if-else分支的代码区域,类覆盖率 由JVM加载并初始化,方法覆盖率 第一个基本语句块被执行,测试覆盖率指标,Mantis使用培训,9,培训内容,术语介绍 EclEmma介绍 EclEmma使用 安装 Coverage运行模式 查看结果 合并结果 导出报告 导入数据 高级特性,Mantis使用培训,10,安装(一),Eclipse 标准的 Update 机制远程安装,Mantis使用培训,11,安装(二),http:/update.EclE/,Mantis使用培训,12,培训内容,术语介绍 EclEmma介绍 EclEmma使用 安装 Coverage运行模式 查看结果 合并结果 导出报告 导入数据 高级特性,Mantis使用培训,13,显示Coverage工具按钮(一),Mantis使用培训,14,显示Coverage工具按钮(二),Mantis使用培训,15,显示Coverage工具按钮(三),Mantis使用培训,16,示例项目介绍,示例项目源代码组织结构:,Random:被测代码 RandomTest1:Random类的第一个JUnitTestCase类 RandomTest2:Random类的第二个JUnitTestCase类 Other: 与其他3个类无关的类(设置这个类的原因,稍后会做说明) Other包:无关包(设置这个包的原因,稍后会做说明),Mantis使用培训,17,运行测试程序,以RandomTest1为例,Mantis使用培训,18,查看结果,Mantis使用培训,19,Coverage视图,1 项目 2 源文件 3 包 4 类 5 方法,对用output路径相同的类, 无法单独为某个类分析其测试覆盖率,Mantis使用培训,20,标注源代码,绿色:全部执行,黄色:部分执行,红色:未执行,Mantis使用培训,21,导出报告,在Coverage视图主区域中点击右键,出现的快捷菜单中选择”Export Report”,Mantis使用培训,22,导出报告,session:一次测试覆盖率交互活动 要导出的session 选择报告的类型(HTML/XML/Text/EMMA session) 存放位置,Mantis使用培训,23,HTML报告-项目,Mantis使用培训,24,HTML报告-包,Mantis使用培训,25,HTML报告-类/方法,Mantis使用培训,26,导入session文件,可将该session的测试覆盖率数据从外部导入,Mantis使用培训,27,导入session文件,Mantis使用培训,28,培训内容,术语介绍 EclEmma介绍 EclEmma使用 安装 Coverage运行模式 查看结果 合并结果 导出报告 导入数据 高级特性,Mantis使用培训,29,高级特性,Coverage视图工具栏 EclEmma的配置界面,Mantis使用培训,30,显示更多菜单,Coverage视图工具栏,Coverage工具栏,选择session,最小/大化视图,折叠所有节点,定位到其他视图选中的Java元素的测试覆盖率,删除当前/所有session,重新执行当前session,当只有一次测试覆盖率测试结果时,合并session按钮不可用,显示为灰色。,合并session,Mantis使用培训,31,可以将多次测试覆盖率的结果进行合并 选择Coverage视图工具栏上的 按钮,进入如下界面:,合并结果,Mantis使用培训,32,合并后的结果,测试覆盖率是多次测试覆盖率的累积,Mantis使用培训,33,显示更多菜单(过滤元素),点击 按钮后会出现更多菜单,以项目/根部包/当前包/类为根节点,显示各个元素的测试覆盖率,以字节码指令/语句块/行/方法/类为单位,显示元素的测试覆盖率,隐藏/过滤未使用的类,默认未选中,Mantis使用培训,34,显示更多菜单,点击 按钮后会出现更多菜单,Mantis使用培训,35,EclEmma的配置界面,在测试覆盖率工具栏中点击“Coverage”进入,Mantis使用培训,36,设置代码注入方式,Mantis使用培训,37,两种注入方式对比,Outside Instrumentation:修改class文件的备份文件(这个备份文件保存在一个与项目文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年营口市老边区事业编单位人员招聘笔试备考试题及答案详解
- 2026年吴忠市利通区中小学编制教师招聘笔试参考题库及答案详解
- 2026年渝中区万州区中小学编制教师招聘笔试模拟试题及答案详解
- 2026年宿迁市宿豫区中小学编制教师招聘笔试参考题库及答案详解
- 2026年宝鸡市渭滨区中小学编制教师招聘笔试备考试题及答案详解
- 2026年南京市下关区中小学编制教师招聘笔试参考试题及答案详解
- 2026年杭州市上城区中小学编制教师招聘考试参考试题及答案详解
- 2026年黑龙江省大庆市中小学编制教师招聘笔试参考试题及答案详解
- 2026年珠海市斗门区中小学编制教师招聘笔试参考试题及答案详解
- 2026年珠海市拱北区中小学编制教师招聘笔试参考题库及答案详解
- 2025年陕西事业编招聘事业单位招聘真题
- 2026年四川省高考化学试卷(含答案及解析)
- 2026辽控集团所属辽宁九夷锂能股份有限公司招聘20人考试参考题库及答案详解
- 2026年上海中考语文真题(目前zui全版本,含优化版答案)
- 2026年江西赣硒矿业有限公司补充招聘部分工作人员4人笔试参考题库及答案详解
- 数控冲床操作工岗前基础实战考核试卷含答案
- 2026年北京市西城区社区工作者招聘考试试卷(含答案解析)
- 开封水务投资集团有限公司历年招聘笔试试题
- 2025年国企车辆管理岗笔试题及答案
- 招标文件分析报告-安徽省农信社三代核心服务器项目
- GE6B燃气轮机联合循环规程
评论
0/150
提交评论