共计 1460 个字符,预计需要花费 4 分钟才能阅读完成。
导读 :在 ToB 业务疾速迭代与新版本公布过程中,开发和 QA 提测面临着大量人工测试场景。那么如何实现智能回归测试,实现测试用例到代码逻辑的精准记录和双向追溯?如何能更高效的晋升测试效率?这都是自动化测试平台的重点摸索。
文|赵冲
网易云信资深挪动端开发工程师
背景
业务场景的复杂化
随着 B 端计划交付场景增多,版本须要疾速迭代。单端平台的自动化曾经无奈做到效率上的晋升,人工回归更多的是在主观下来评估改变的影响面,为了确保版本的稳定性, 全量回归测试的挑战会拉长 B 端 SDK 和计划公布布局 。传统的自动化测试校验后果只是单一性的校验。挪动端的 API 和 UI 自动化场景简单,新旧版本兼容性用例治理,脚本化实现用例管理效率较低。因而对于网易云信来说,基于挪动端较全场景的多端互通平台的测试是必不可缺的。
思考与挑战
通过平台形象根底能力,以插件化能力的形式撑持全流程自动化测试。
执行器链路环境
- 用于运行测试用例的执行器信息;
- 用于运行测试用例的执行产物的构建链路;
- 用于运行测试用例的挂机测试设施被调度;
云断言规定
- 执行后果的校验依据规定全字端比照;
- 对立执行后果的比拟规定定义,以关键词形式反对;
- 长久化断言参数,依据多端数据计算校验后果;
元用例模型
- 依据自动化生成接口元数据属性,进行根底用例和 AI 用例举荐标识;
- 依据碎片化复用组合和自定义用例,构建业务场景模型;
- 多端多平台用例参数上下游基于平台长久化数据进行;
- 执行集模块化配置资源包;
后果统计模型
- 执行工作后果缺点定位分类报告;
- 覆盖率剖析;
- 历史数据聚合模型剖析;
解决方案
联合背景和思考,自动化平台的设计策略中蕴含了: 执行器链路环境、云断言规定、元用例上下游,场景建模、覆盖率剖析、缺点定位及报告。
平台架构计划
元用例提取过程
代码自动化提取,映射对应的根底用例。
通过配置资源包和规定文件,联合工具解析待测产物,主动生成测试代码和对应的接口用例。在平台上抉择待测元素的办法和自定义的属性,组合成元用例。元用例的办法属性是不可编辑的,它是精准测试代码的映射产物,后续构建业务模型的基石就是基于用例的元数据。客户端的接口无奈像服务端这样热更新接口行为。 公布进来的版本 API 肯定是固定的接口行为。
构建业务模型
细化场景业务,做基线积淀,提取测试执行集。
运行链路流程
联合 QA 本地调试的流程,本地调试用例的链路是须要反对自定义设施资源进行调试用例。
智能用例举荐
实在用户的长久化数据日志,通过关键词日志锁定用例链路执行轨迹,生成对应的用例。
实际
缩短代码实现和用户反馈之间的工夫,最大限度地升高正在进行的工作的老本,这也是出现代码到客户最终价值,须要更快更平安的交付版本,达到版本的最大收益。
自动化的老本与收益(ROI)
自动化的收益与迭代次数成正比,以下是个新产品的简化公式:
自动化的收益 = 迭代次数 * (全手动执行老本 - 保护老本) - 首次自动化老本
落地我的项目
目前在工程线解决方案和即时通信(IM1 和 IM2)落地履行。
每日挂机测试
通过上游 Job 实现构建工作,上游 Job 进行自动化工作。不阻塞打包工程工作如果不能触发高低 Job,能够在业务执行 Pipeline 中写入 node 节点执行
将来瞻望
后期只是针对 ToB 业务解决方案畛域中挪动端多平台摸索实际落地,后续心愿可能做到实在提效的同时,进步平台的易用性和扩展性。心愿通过本文,能对其余团队有所启发,接下来的工夫里一起持续前行摸索。
作者介绍
赵冲,网易云信资深挪动端开发工程师,热衷于钻研跨平台开发技术以及工程提效,目前次要负责视频会议组件化 SDK 的相干研发工作