1.什么是自动化?
由机器设备代替人为自动完成指定目标的过程。
功能测试的操作步骤,用自动化脚本方式去实现
2.自动化优势?
- 减少人力劳动
- 提高工作效率
- 产品规格统一标准:把复用性比较强的代码抽离出来,实现了代码的统一标准
- 规模化(批量生产):实现了这种复用性脚本封装之后,生产步骤就简化了,提高了生产速度,就可以批量生产
3.什么是自动化测试?
让工具、程序(代码)代替人为去验证程序功能的过程。
4.为什么做自动化测试?
- 解决回归测试(新版本正式测试之前的问题回归以及周边功能的验证)-冒烟测试(主干测试)
- 解决压力测试(多用户操作软件,统计软件服务器处理多用户请求的能力)-天猫双11处理业务的峰值
模拟用户操作,代码化、批量化新增用户数,一定程度上实现多人去操作的测试方法,造成压力测试。 - 解决兼容性测试(兼容不同的软件环境,如浏览器,操作系统,分辨率等)
同一个脚本在不同环境里运行 - 提高测试效率,保证产品质量
5.冒烟测试和回归测试的概念
- 冒烟测试:
绝对的,不需要有既有的版本也可以进行冒烟(抽几条主流程的用例来执行) - 回归测试:
相对的,必须要有既有的版本,在下个版本出现时执行的测试,或者在上个版本结束之后执行
自动化测试用例一般最多的用在回归测试中!!!
6.UI的效率提升
- 语言
- 定位元素的方式、通过页面元素属性值寻找元素的效率高于通过页面元素路径的寻找效率
- 脚本业务流程的提升:主要体现在等待的方式处理
比如:
- 使用强制等待:你的UI脚本执行总共耗时=UI脚本执行时间+强制等待时间
- 使用显性等待:你的UI脚本执行总共耗时=UI脚本执行时间+显性元素(渲染)显示时间
- 使用隐性等待:你的UI脚本执行总共耗时=UI脚本执行时间+页面所有元素显示(渲染)时间
追求UI脚本效率的脚本通常不会使用隐式等待!!!!!!
7.自动化测试具体在工作中会应用到多少呢? 70%
先了解自动化测试流程:
- 前提是功能测试执行完;
- 绝大多数自动化用例就是照着功能测试用例在编写脚本;
- 基于某些原因自动化脚本不能实现:
1)有些功能测试用例用自动化脚本实现的难度太高 20%
2)有些功能测试用例无法通过自动化测试脚本实现 10%
3)时间成本把控不足以支撑自动化测试脚本的编写 30%
大概:自动化测试用例能覆盖功能测试用例的70%,只有30%因为以上原因不去实现(功能测试用例一定是100%覆盖)
怎么才算具备了自动化的能力呢?
- 你学会自动化测试脚本,你就具备了自动化测试的能力(最低)
- 首先要有框架,然后才是要自动化测试用例脚本编写的人员,输出自动化测试脚本;