1、什么是自动化测试
让程序代替人为去验证程序功能的过程
1.1、为什么要进行自动化测试
- 解决回归测试(不是全部的项目)
- 解决压力测试
- 解决兼容性测试
- 提高测试效率,保证产品质量
回归测试:项目在发新版本之后对项目之前的功能进行验证
压力测试:可以理解为多个用户同时去操作软件,统计软件服务器处理多用户请求的能力
兼容性测试:不同浏览器等等
1.2、自动化测试在什么阶段开始
功能测试完毕(手工测试)
手工测试:由人去一个一个输入测试用例,然后观察结果。
1.3、自动化测试所属分类
黑盒测试(功能测试)
灰盒测试(接口测试)
白盒测试(单元测试)
提示:web自动化测试属于黑盒测试(功能测试)
1.4、自动化测试的优点
- 较少的时间内运行更多的测试用例
- 自动化脚本可重复运行
- 减少人为的错误
- 测试数据存储
1.5、自动化测试的缺点
- 不能取代手工测试
- 手工测试比自动化测试发现的缺陷更多
- 测试人员技能要求
2、自动化测试的分类
- web(UI)自动化测试
- 接口-自动化测试
- 移动(app)-自动化测试
- 单元测试-自动化测试
3、web自动化测试
3.1、什么web项目适合做自动化测试
- 需求变动不频繁
- 项目周期长
- 项目需要回归测试
3.2、如何进行web自动化测试(主流测试工具)
- QTP(收费),QTP是商业的功能测试工具,收费,支持web,桌面自动化测试
- selenium:(开源)开源的web自动化测试工具,免费,主要做功能测试
- Jmeter:开源,web,接口,性能,由Apache公司使用java平台开发的一款测试工具,提示:web测试在通信层(无UI界面)
- Loadrunner:收费,web,偏性能
- Robot framework:基于python可扩展的(关键字驱动)的测试自动化框
3.3、主流工具-汇总
- web自动化测试:selenium ,robot framework
- app自动化测试:appium
- PC客户端(win32)自动化测试:QTP
- 接口自动化测试:Jmeter、Postman、httpUnit、RESTClient
- 云测试平台:Testin、Testbird
- 性能测试:Jmeter、LoadRunner