自动化测试概念
什么是自动化测试?
把人对软件的测试行为转化为在预设条件下,由机器执行系统或者应用程序并评估结果的过程。
对于常见UI测试来说,就是使用自动化测试工具模拟之前需要人工在软件界面上各种操作并自动验证结果是否符合预期。
自动化测试流程
- 准备测试环境:安装测试工具、配置测试环境、准备测试数据等。
- 编写测试脚本:根据测试用例编写测试脚本,编写完成后需要进行调试,确保脚本可以正常运行。
- 执行测试:执行测试脚本,记录测试结果。
- 报告结果:根据测试结果生成测试报告,报告中包括测试结果、测试统计信息等。
分层自动化测试
金字塔模型
橄榄球(蜂巢)模型
UI自动化测试价值
优势
- 贴近用户,直观
- 提高效率(回归测试,功能测试加速)
- 提高质量(兼容性测试)
劣势
- 维护量大(脚本)
- 误报率高(代码改动,测试环境,测试数据,测试脚本 ……)
- 覆盖率低且难以统计
UI自动化使用场景
- 功能稳定(UI界面变化不频繁)
- 项目周期长(回归次数大于等于6)
- 自动化测试脚本可重复利用
总结