在工作中自动化工程师常常会被问到:
• 接口测试做到什么程度了?
• 接口测试有没有跑出Bug?
• 接口测试带来了什么好处和效果?
• 团队接口测试的投资回报比是否符合预期?
• …
为了达到量化接口测试效果,可以引入Jacoco来进行接口测试精准度量。Jacoco度量接口测试的原理和单元测试类似,它支持以下级别的覆盖率:
• 指令覆盖:字节码指令的执行比例,独立于源码格式
• 分支父类:分支覆盖比例,计算if…else; switch…case的覆盖比例
• 类覆盖:类覆盖比例,类中任意方法被执行,该类被覆盖
• 方法覆盖:方法覆盖比例,方法中任一行代码被执行,该方法被覆盖
• 行覆盖:每行代码覆盖率,理论上100%的行覆盖率能保证程序没有Bug
工作原理
• 解析服务:在JavaClass文件加载到JVM的时候进行插桩
• 代理服务:手动执行测试用例,代理监控执行过程,Dump数据到内存中存放
• 数据处理服务:结合插桩的数据分析代码覆盖率,生成HTML报告
配置步骤
• 安装配置Ant,运行ant -version确认安装成功