鲸云效解析自动化测试前期的准备很重要
鲸云效是腾讯优测推出的为企业制定软件质量全景解决方案的平台,其基于腾讯软件质量管理体系,以质量体系标准为准绳,以工程效能提升为宗旨,致力于以科学化和体系化的理论和实践,赋能传统行业实现数字化转型。
1、自动化测试需求筛选与评审
测试需求筛选主要时明确自动化测试的的目标,整理出需要实现自动化测试的业务需求,以及自动化测试深度。需求分析完成后要对其内容进行评审,只有项目组评审通过后才能有效。
UI自动化测试不可能做到100%覆盖,所以我们主要从实际的业务场景方面考虑,首先需要贴合用户使用的正向场景,然后再筛选出重要的逆向场景。
API自动化测试,需要对整个系统的API进行整理,根据API的重要程度和使用率来划分等级,确定API自动化测试的深度。对API自动化测试的覆盖率要求都会在70%以上,也有公司要求达到100%覆盖率。
API 变更频率比 UI 低,而且 API 测试脚本的执行效率高,出错率低,可测试的覆盖率也比 UI 高,它的维护成本也较低。所以现在很多公司将 API 作为自动化测试的重点。
- 制定自动化测试计划
由 PM 和自动化测试负责人编写计划,与手工测试的测试计划过程一致,在测试计划中要明确做什么,什么时候做。自动化测试计划包含自动测试的组织架构、工作任务分配、工作量估计、人力物力资源的分配、进度的安排、风险的估计和规避、各任务通过准则等。
3、制定自动化测试方案
测试方案编写需要由有经验的工程师编写,测试方案要明确自动化该怎么做。方案写得越详细,后面遇到的坑就越少。主要从以下方面考虑:
自动化的目标?
测试的范围?
工具的设计和选择?
开发语言的选择?
自动化测试框架的设计?
持续集成的规划?
UI自动化的场景与规划?
API自动化场景与规划?
用例的设计原则?
测试脚本编写的原则?
测试脚本的管理?
测试数据的管理?
自动化测试环境的规划?
脚本的执行策略?
4、搭建自动化测试框架
自动化测试框架是由基础模块、用例管理模块、报告统计模块等组成的工具集合;它用于组织、管理和执行自动化测试用例,在测试完成后统计测试结果生成HTML测试报告。
自动化测试框架需要保证测试脚本的分布执行,用例的模块化,测试数据的管理,清楚的日志分析与错误截图,通俗易懂的测试报告,基本的公共对象库,基础的操作方法封装,可实现环境的配置,还要各种异常处理和场景恢复等。
在设计测试框架的时,要尽可能的将这些模块功能有机的结合起来,要能将脚本有效的组织和连贯应用,提高测试脚本的可维护性和可读性。测试框架还要做到高内聚低耦合。高内聚,每个模块尽可能独立完成自己的功能,不依赖于模块外部的代码;低耦合,模块与模块之间接口的尽量简单。
对于中小型企业,不必自己编写一套自动化测试框架,现在开源的自动化测试框架有很多如:Python + unittest+ selenium/Appium/requests(推荐),Robot framework(推荐),Serenity,Phoenix Framework,Tellurium,Gauge 等等。
记住:没有万能的测试框架,适合自己项目的,能提高工作效率的就是好框架
5、测试用例标准化与制定编码规范
测试用例标准化对提高代码的重用性和复用率直接相关,它对测试脚本的可靠性和可维护性也有很大影响。
用例标准化需要有统一的设计模式,统一的编码规范与约束,共有的模块化函数与类库,统一的命名规则。