自动化:由机器设备代替人为完成制定目标的过程
优点:
提高工作效率
减少劳动力
产品规格同一标准
批量生产
自动化测试
让程序代替人为去验证程序功能的过程,即在预设条件下运行程序系统
流程
- 确定、搭建自动化框架
- 编写测试用例,将其转化为soupui(接口)—>自动化测试脚本
- 执行自动化测试脚本
- 输出执行结果报告
- 完善自动化测试脚本
解决的问题
- 回归测试:更改后【项目发新版本】对之前的所有功能进行验证
- 压力测试:程序能否支撑许多用户同时使用
- 兼容性测试
提高测试效率,保证产品质量
何时开始自动化测试?
功能测试【手工测试】完成后
web自动化测试本身属于黑盒测试
优缺点
优点:
- 相同时间内运行更多的测试用例
- 自动化脚本可重复运行【利于回归测试】
- 减少人为的错误
- 对测试数据存储,可输入输出读取
缺点:
- 手工测试发现bug更多
手工测试:探索性测试、发散思维测试 - 对测试人员要求更高
自动化测试分类
- web(+UI)自动化测试
基于http协议开发的项目/基于浏览器访问的项目
在界面确定,项目稳定后进行UI测试 - 接口自动化测试
后台开发完即可进行 - 移动(app)自动化测试
- 单元自动化测试
自动化测试最好的用处:
回归测试
兼容性测试
web自动化测试
让程序代替人为自动验证web项目功能的过程
什么样的web项目适合做自动化测试?
- 需求不频繁变动【保证自动化测试脚本可以较长应用】
- 项目周期长
- 项目需要回归测试
web自动化测试工具
Selenium:开源,主要做功能测试
loadrunner:功能强大,适合复杂场景的性能测试
jmeter:由Apach公司使用java开发的,支持web、接口测试、性能测试
QTP:支持web、桌面自动化测试
robot framework:基于python可拓展的测试自动化框架【关键字驱动】
postman:接口自动化测试
appium:App端自动化测试