面临的问题:
- 版本迭代快,按月>周>小时发布,多端、多版本、多机型、多环境(测试、链条、预发布、线上环境)
- 历史回归测试(成百上千条业务用例)
- app改动有蝴蝶效应,研发改动几行代码,可能影响几个模块,涉及几十个功能,都需要测试
以上情况会导致测试时舍弃功能回归、尽量精准,所以会有漏测
不适合自动化的场景:
- 初创团队:业务为定型,产品重构频繁
- 公司节奏慢:人工测试可以满足需求
- 业务无积累,大量小功能频繁上线
- 测试体系完备:单元测试、接口测试完备,完美金字塔
UI测试价值
- 提高效率:回归、功能测试加速,融入企业迭代流水线
- 提高质量:兼容测试、专项/非功能测完后、自动化探索
UI自动化在企业中的用途
合理使用UI自动化
使用分层测试策略,控制UI自动化测试规模
- 少数核心功能进行自动化(需要人工维护测试用例)
- 大部分的基础回归交给自动遍历
- 新功能进行人工测试
技术方案改进
- 良好的维护模型:PageObject模型或其他更简单的封装
- 更好的框架支持:增肌watch、智能等待、失败重试等机制