测试基础
- 测试流程
- 测试方法
- 测试用例
- 用例评审
- 用例执行
- bug报告编写
- 测试总结
测试进阶
- 浏览器F12、移动端Fiddler 抓包分析bug
- Navicat连接数据库分析传入数据和输出数据
- 根据接口文档使用Postman进行接口测试
- 使用JMeter进行性能测试
- 使用Linux查看服务器资源使用率
- 学习Nginx、Tomcat、MySQL
- 找开发要前后端代码进行测试服务器部署
Web自动化测试
语言选择:人生苦短,我用Python
测试驱动:用最火的Selenium
- Python基础学一遍https://www.runoob.com/python/python-tutorial.html
- 学习Git使用,这时候就需要仓库来存放自己的代码以免代码丢失
- Selenium官方文档看一遍https://selenium-python.readthedocs.io/
- 了解Selenium运行原理和所需要的依赖(浏览器驱动)
- 找个网站练手Web自动化,跟着Selenium官网敲
- 学习Unittest、Pytest单元测试框架
- 学习最流行的PO设计模式、数据驱动、关键字模型(Python操作Excel)
- 生成报告、发送邮件
- 学习使用Jenkins持续集成工具来运行自动化测试
App自动化测试
测试驱动:用最火的Appium
- 了解Appium运行原理和所需要的依赖(Android SDK、Appium客户端、Node.js、Java JDK)
- adb连接手机,使用Appium客户端配置连接手机
- 使用appium客户端定位元素信息
- 找个app练手,写一些简单的脚本(脚本编写和Selenium一样)
- App专项自动化测试
- 将脚本转为框架(和Web自动化一样)
- 生成报告、发送邮件,持续集成
接口自动化测试
测试驱动:用最火的Requests,对Reqeusts进行二次封装的HTTPrunner也很强大更适合平台开发
- Requests官方文档看一遍https://requests.readthedocs.io/zh_CN/latest/
- 跟着自己公司的接口文档写一些简单的脚本
- 将脚本改进为框架(这个过程有点长,接口测试框架没有什么设计模式,反正我写了挺长时间)
- 改进过程:操作Excel、保存登录Cookie/Token、解决接口依赖、读取数据库进行结果校验
- 生成报告、发送邮件,持续集成
性能测试
测试驱动:JMeter或者Locust,建议使用JMeter毕竟用的人多,资料也好找
- 先使用JMeter做一些接口测试来熟悉JMeter基本使用
- 熟悉 参数化、集合点、关联功能,使用JMeter向服务器发送并发请求
- 分析 时间指标 和 资源利用率指标
- 发现性能瓶颈
- 定位分析性能瓶颈
- 优化性能
测试平台开发
先学完自动化测试再学测试平台开发的好处就是对Python的使用已经很熟练,框架设计能力也有所提高
和自动化测试框架相比测试平台开发只是将操作数据的地方改为了GUI界面,存数据的地方变成了数据库,比框架更容易使用和管理
- 前端学习Vue.js、Element UI(其实直接去GitHub上拉开源代码就好了,我就是这么做的哈哈哈哈哈哈哈)
- 后端学习Django、Django REST framework(无需使用SQL,Django有自己的操作数据库方法)
- 测试驱动选择,这要看测试驱动是否适合平台化
- 干就完了!!!
平台化云服务器运行解决方案:
接口:Reuqest和HttpRunner不依赖硬件环境,放Linux就能运行
Web:Selenium依赖浏览器,解决方案:使用谷歌浏览器无头模式(无界面)运行,可在Linux上运行
App:Appium依赖模拟器/真机(USB连接),解决方案:使用公司内部服务器即可
性能:二次开发JMeter或Locust不依赖硬件环境,放Linux就能运行
不能忘记炫耀我的成果:http://120.24.110.127/#/login,第一次进入加载会很慢(红着老脸买的学生服务器zzzzzz~)