前言
系列文章目录
自动化测试提效
目录
系列文章目录
前言
一、指标
二、流程
1、关键流程卡点
?2、细节卡点?
接口的规范
1、接口变更或新增需要添加通知事件给相关方
2、接口必填信息
3、接口维护和管理
4、接口废弃处理
总结
前言
如果要进行自动化测试提高服务稳定性,那么我们是否要先从实现的指标开始思考,确定我们要做成怎么样,需要具备什么条件和资源,其次确定我们的流程,让团队协作更高效呢?
一、指标
优先级 | 指标 | 解释 | 目标 |
---|
1 | 用例编写成本 协作效率 | 1、用例编写成本足够低,维护足够方便,用例能够可视化管理,可灵活在各种环境执行自动化用例 2、多人编写,能做到相互隔离,消息触达率高,在规则内创新,平台支持锁定不允许删除操作 3、接口/场景/测试计划/标签/变量等 筛选高效快速,场景筛选 | 1、重复性工作少,维护性高,运行和加载时间快 2、测试计划的用例选择高效和灵活,不重复运行相同的测试用例 | 2 | 成功率 命中率 覆盖度 | 1、单个用例运行成功率,不依赖db的情况下,3个环境 100%可回归(db类除外) 2、单个场景运行成功率,不依赖db的情况下,3个环境 100%可回归(db类除外) 3、测试计划成功率(多倍数情况下)3个环境能 100%回归(db类除外) | 目标:送测前测试计划通过率 100% 后,才能送测(送测后后台覆盖率75%) 痛点:无法直观的评估自动化的效果和覆盖度如何? 方法1:开通覆盖率,覆盖率在75%以上 方法2:线上问题反馈数? | 3 | 灵活性 | 1、3个环境可回归 2、场景编写分子场景和总场景,避免在单个场景中,跑到前30%场景时就失败 ,后面的场景被阻塞 3、接口用例前置依赖不能太多,避免前置失败了,导致用例被阻塞 4、模块改动,能快速选出相应的接口和场景用例 | 灵活的组织各种粒度的自动化回归集合 | 4 | 可读性 | 1、目录层级结构清晰(模块-接口功能),不存在无用的层级结构,有边界性 2、接口用例(用例名称、前后置tab名称),分类排序,见名知意,言简意赅 3、场景(用例名称、前后置tab名称),分类排序,见名知意,言简意赅 4、测试计划,分类排序,见名知意,言简意赅 | 开发同学能直接参与到接口自动化自测中,同时能时刻监控线上实时情况 | 5 | 可维护性 | 1、用例和场景做到是单纯的一个框架,用变量名打通的一套框架,用例和场景的最前置用配置参数控制用例的输入 2、提取用例的公共部分,放到项目前置脚本和模板里,做到变只需要修改公用的模板,非每个用例 | 业务发生变动,维护成本非指数级上升,发生人员变跟时,自动化交接成本小 | 6 | 排查问题耗时 | 1、用例、场景、测试计划 执行稳定,不能干扰到业务测试流程的执行 2、断言要清晰,能快速知道在哪里报错,定位是用例问题 还是数据问题,还是业务逻辑有问题 | 定位排查问题耗时在5min内,提供直观定位问题的手段和必要数据 | 7 | 测试计划运行耗时 | 1、测试计划的内容需要按需选取,不重复不遗漏(需要支持标签快速选取,包括正向选取和反向选取,多标签交接选取) 2、测试计划分类存放: 按业务模块分类 按阶段分类:如 【正向用例】标签 能满足冒烟测试和线上发布,【反向用例】标签 测试深度加深满足系统版本测试 按运行环境分类:可回归、db依赖、redis依赖、有耗时等待 按照接口优先级分类:P0、P1、P2、P3、N 3、等待时间的慎用,避免因为等待时间过长 | 千条用例控制在10s内完成执行 | 8 | 稳定性 | 环境层面 环境要稳定,不稳定的情况下提前告知 数据层面 1、自动化的测试数据和手工测试数据保持独立,互不干扰 2、开发环境、测试环境和线上环境,数据独立,互不干扰 3、线上测试环境和用户数据隔离,互不干扰 4、模块间如果用到相同的测试数据,应尽量使用两份,避免当同一份数据出现问题,两个模块都跑不通 5、数据做好清理,以免产生过多的脏数据,实现当测试数据使用完后能复原到初始状态数据 6、只读测试数据(静态)应和状态有改变的测试数据(动态)分开 处理 | 数据独立,稳定可持续运行 |
二、流程
指标解决我们的输出是否有效,然后让我们的有效输出实现项目的效益最大化呢?
那就需要流程的驱动了。
1、关键流程卡点
?2、细节卡点
?
接口的规范
1、接口变更或新增需要添加通知事件给相关方
2、接口必填信息
接口基础信息(需要保证接口的信息的唯一性和准确性)
在wiki上可以附上项目总的 错误码文档、其他相关文档(有权限限制,逻辑复杂)的k链接
3、接口维护和管理
1)接口状态
已经废弃的一定要把状态置为已经废弃,以免导致无效的工作
接口不可以被删除,只能被打上不同的状态
?2)接口优先级(用tag 来管理,后期方便直接捞相应的tag下的用例来跑测试计划)
3)接口的唯一性
在平台上一个接口保证只有一份文档,只维护一个接口实现
4、接口废弃处理
接口废弃后,需要通知测试,抽离响应接口的测试用例,以免影响测试用例的成功率
?
?
|