Emma获取功能测试覆盖率

EMMA 是一个开源、面向 Java 程序测试覆盖率收集和报告工具。它通过对编译后的 Java 字节码文件进行插装,在测试执行过程中收集覆盖率信息,并通过支持多种报表格式对覆盖率结果进行展示。 EMMA 所使用的字节码插装不仅保证 EMMA 不会给源代码带来“脏代码”,还确保 EMMA 摆脱了源代码的束缚,这一特点使 EMMA 应用于功能测试成为了可能。

具体应用过程:

第一:打桩,得到打桩文件和记录文件(.em)

如果是JAR包,直接下面命令打包,并把emma.jar文件也放入lib文件夹中;如果是WAR包,先jar xvf xxx.war解压,找到具体的JAR包执行下面命令,把emma.jar放入同一目录,再jar cvfM xxx.war *打成WAR包

java -Xbootclasspath/p:emma.jar emma instr -m overwrite -ip udb.biz-1.2.0-SNAPSHOT.jar -Dmetadata.out.file=/home/udb/coverage.em

第二:启动应用,运行测试

第三:从内存中dump出覆盖率(.ec)

java -Xbootclasspath/p:emma.jar emma ctl -connect localhost:47653 -command coverage.get,coverage.ec

第四:根据em文件和ec文件转换成html文件

java -Xbootclasspath/p:emma.jar emma report -r html -in  coverage.em,coverage.ec -Dreport.html.out.file=coverage.html

最后通过得到的coverage.html文件可以得到具体的覆盖率情况

具体信息可以参考:http://www.ibm.com/developerworks/cn/opensource/os-cn-emma/

转载于:https://my.oschina.net/flynewton/blog/11205

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值