首页 > 技术文章 > 超实用:精准衡量接口测试覆盖率

testfan2019 2020-01-10 15:52 原文

在工作中自动化工程师常常会被问到

• 接口测试做到什么程度了?

• 接口测试有没有跑出Bug?

• 接口测试带来了什么好处和效果?

• 团队接口测试的投资回报比是否符合预期?

• ......

为了达到量化接口测试效果,可以引入Jacoco来进行接口测试精准度量Jacoco度量接口测试的原理和单元测试类似,它支持以下级别的覆盖率

• 指令覆盖:字节码指令的执行比例,独立于源码格式

• 分支父类:分支覆盖比例,计算if..else; switch..case的覆盖比例

• 类覆盖:类覆盖比例,类中任意方法被执行,该类被覆盖

• 方法覆盖:方法覆盖比例,方法中任一行代码被执行,该方法被覆盖

• 行覆盖:每行代码覆盖率,理论上100%的行覆盖率能保证程序没有Bug

工作原理

• 解析服务:在JavaClass文件加载到JVM的时候进行插桩

• 代理服务:手动执行测试用例,代理监控执行过程,Dump数据到内存中存放

• 数据处理服务:结合插桩的数据分析代码覆盖率,生成HTML报告

配置步骤

• 安装配置Ant,运行ant -version确认安装成功

 

• 官网下载jacoco,解压文件,jacoco的服务在lib包下

 

• 配置Tomcat catalina文件,在其中指明jacoco代理服务的路径,代理服务的端口,代理服务监控的包

 

• 部署Web服务到配置好的Tomcat的服务器中,运行接口测试脚本

 

• 编写Jacoco Ant脚本,运行Dump任务收集数据,运行report任务生成HTML报告


作  者:Testfan Kitty

出  处:微信公众号:自动化软件测试平台

版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接

推荐阅读