一、 自动化测试背景
1、 什么是自动化测试?
机器替代手工测试,自动测验结果是否符合预期
2、 自动化测试能够带来什么?
-
替代大量重复性工作,减轻双手工作量
-
提高回归测试效率,适合敏捷测试
- 在非工作时间自动执行,工作时间查看测试报告
- 保证每次测试执行的一致性与正确性,避免人为错误
3 、 自动化测试劣势?
-
一般用于回归测试
-
不能完全替代手工测试
- 自动化测试环境依赖性较高,尤其UI自动化
- 自动化测试工作量(框架设计+脚本)比单次手工测试大,自动化测试多次,才会显示出性价比
二、 自动化测试流程
1. 评估自动化测试可行性
-
前提条件: 功能是否稳定,需求是否频繁变更
-
项目周期:研发以及维护周期长
- 人员资源问题: 是否人员资源可用
2. 测试需求分析:
-
测试需求点
-
确定测试覆盖率
- 用例筛选,参考方向:
历史Bug较多模块
主业务流程
基础重复功能
优先级
3. 框架选型
-
框架选型
-
框架结构设计(层级结构)
- 编写规范设计(元素定位/命名规则/注释规则/权限规则)
该过程可能需要1-2周
4. 脚本开发
5. 执行自动化测试
- 环境配置管理
- 测试脚本配置
- 脚本执行
6. 自动化测试结果分析
结果失败原因分析:
- 脚本本身问题,自身Bug,修改优化
- Bug
7. 成果展示:
要记录从自动化开始起,
- 手工回归时间是否缩短
- 发现的Bug情况
- 用例覆盖率
- 脚本稳定性
尽量以报表输出成果
8. 框架以及脚本维护
项目迭代过程中,可能部分功能小修改,代码需要维护
脚本优化