关于测试覆盖率思考

     最近我们测试团队一直在忙覆盖率,使用jacoco工具将java代码覆盖率展现出来了,四季度自动化人员补充老的功能测试用例,将老的功能分为如下几步:

第一步:提高代码行覆盖率,扩大测试广度,可以通过覆盖率工具看到,随着接口用例数量增加,覆盖面也在扩大(源码分支行随着业务行数会变化)

在对源码进行覆盖过程中,也发现了很多问题,比如功能已经删除,但是代码未进行屏蔽,有些代码直接定义了一个空函数在那里,冗余代码等等问题,过程中不停的督促开发修改。有些代码因为年代久远,开发也不敢乱动,但是这些代码会带来编译时间长,接口暴露的安全问题,这个也算是测试中发现代码问题,等于走查了一遍项目代码,其中的工作量还是比较大的,看代码看的比较痛苦,但是对能力是一种提升。

第二步:增加逻辑覆盖率

测试过程中,会发现很多分支实际是没有走到的,造成很多异常逻辑分支无法覆盖,通过提高覆盖率,增加异常逻辑,试想错误逻辑都已经过到了分支,不会出现大的逻辑问题。

可以查看下面的代码,逻辑分支分有多种情况,这个时候需要设计接口用例,尽可能增加逻辑分支,覆盖异常,可以增加代码健壮性。分支覆盖难度比行覆盖投入精力也会更大,因为懂业务逻辑,需要懂代码逻辑,但是产出还是比较可观。

第三步:异常分支整理覆盖

对于有些异常是难以覆盖的,比如数据库插入数据失败,或者并发情况下才能出现的错误,需要覆盖,对于此类,先总结出来,后期有时间再去进行覆盖。暂时没有团队没有投入成本去做,而且收益比较小

对于覆盖率工具,后期在测试中做为功能测试介入手段,通过覆盖率检测用例设计是否齐全,测试范围大小(前提是认为开发代码是正确的),自动化任重道远

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值