由于多个域共建情况比较多,一方面应用随业务发展在不断扩展,各个应用代码复杂度会不断增加,如何准确、全面判定代码修改影响范围会越来越重要,另一方面共建过程中如果不能准确预估出各域共同改动所带来的影响面,就会存在测试遗漏;如果各域信息不对称可能会存在一方改动另外一方无感知,导致评估不到位带来一些影响。基于以上背景商家域引入精准测试平台实践,可以帮助QA扫描出每个版本开发改动的接口范围,并且可以有效地提高测试的覆盖率和可靠性。
基于第二季度在商家地址专项上探索实践了精准测试并取得了一定的收益;第三季度扩大规模化实践,因此根据商家核心业务需要,选择了核心的 4 个应用,并沉淀了持续几个迭代的过程和结果数据。以下是几个迭代下来使用精准测试平台的一些实践数据和心得。
图片
提测之后,冒烟之前:
- 根据测分文档改动的服务,去拉取确认改动范围;
- 跟开发确认改动接口是否合理,给测试明确测试范围;
- 确认平台的精准度;
- 确认需要补充自动化的清单;
一轮测试完成之前:
- 针对改动接口的自动化进行执行,通过率达到100%;
- 确认改动服务覆盖率75%。
- 确认改动接口范围,明确测试范围;
- 新增未完成自动化的改动接口,精准获取改动接口自动化执行结果;
- 提高服务和需求维度的代码。
协助我们补充测试场景和用例,合并代码或人工评估不精准导致,避免漏测。
实例1:迭代中通过推荐的接口发现有影响某一个接口,技术方案未体现有改动,改动一行代码,改动接口有过滤审核单逻辑,需要加入回归场景,推荐出 1 个未评估到接口,其余推荐出正常新增及修改接口。
影响面:过滤被风控的审核单,需回归场景,确认是否正常过滤审核单,跳转正常无审核单,技术方案无该接口改动记录。
收益:确认影响面,保证了部分未评估到的场景被覆盖倒,避免可能引起线上问题。
图片
而平台推荐出技术方案范围外的一个接口:
图片
后经确认,确实有修改:
图片
图片
图片
综上,从平台推荐和开发实际的接口变更来看,当前某个服务平台推荐精准率是 100%,帮助 QA 精准确认接口改动数量,精准定位测试范围。
包含新增的 Dubbo/Http 接口、老的 Dubbo/Http 接口都推荐出来,针对改动的接口已完成自动化 Case、执行自动化更精确;未完成的自动化可针对性进行左移、对比技术方案查缺补漏;左移自动化 Case数:50+ 个。
拦截 2 个有效问题:分别归属为其他部门。多个域参与仓库的代码开发,在多个域共建情况下,无法准确预估各域改动带来的影响范围,通过精准推荐能够涉及影响的范围,聚焦在改动接口的自动化结果分析,节省环境及其他 Case 影响时间,触发自动化工程回归老功能,使问题提前暴露。
图片
自动创建计划执行-提效点 :提效 0.5-1h/ 每人每迭代,增量代码预览、分析更便捷,节省 0.1-0.5h/ 每人每迭代。
通过增量对比,无需重新拉取新老代码对比确认改动,可直接拉取分析对比,更加直观确认代码改动点,确认影响范围是否回归,提高人效。
图片
526版本迭代:接口变更数:90+;测试左移接口数10+;平台推荐结果数:73+;精准比例:81%左右。
525版本迭代:接口变更数:40+;测试左移接口数30+;平台推荐结果数:25+;精准比例:63%左右。
524版本迭代:接口变更数:22+;测试左移接口数8+;平台推荐结果数:11+;精准比例:72%左右。
图片
存在多个域共建的情况下,这个时候也能够帮助精准推荐出测试范围。精准测试可以有效地提高测试的覆盖率和可靠性,可以帮助测试人员发现潜在的问题,避免多域共建的情况下信息偏差导致漏测接口,推荐出开发改动未评估到的影响接口;
在整个第三季度过程中,每个版本通过对多个应用的推荐使用,有推荐 100% 的数据,中间也有一些平台待优化的问题,数据持续收集中,以最新迭代数据为例,平均精准率为 80+%,第三季度截止目前:多个应用、几个迭代、多位同学以虚拟小组形式共投入 6d+ 初步取得结果如下:输出精准测试流程交互图,拦截缺陷,推荐出未评估到的改动接口,左移自动化 Case,自动创建左移计划并自动执行:提效 0.5-1h (每人每迭代);过程中有一些特殊 Case 的情况,比如有一个独立项目新增及修改接口均未正常推荐出来,也需要平台后续调整精准推荐的策略。
本文链接:http://www.28at.com/showinfo-26-34613-0.html得物商家域精准测试实践
声明:本网页内容旨在传播知识,不代表本站观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
下一篇:秒杀系统 Go 并发编程实践!