目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、自我介绍
2、测试流程
需求阶段、测试计划阶段、测试设计阶段、测试执行阶段、测试评估阶段、项目复盘阶段
测试计划:
测试的目标、测试的范围、测试环境的说明、以及测试类型的说明(需不需要安全 性能稳定性 功能) 测试工具、测试模块的划分、测试负责人、测试执行轮次的时间安排、测试的风险等、工作量的评估
测试用例编写流程:
1)先熟悉分析项目业务需求了解产品的业务和功能点
2)根据需求里的功能模块进行细化分析使用一些用例设计方法去设计测试用例用特定的模板编写
3)从业务流程出发梳理整个流程 缺少再补充
4)需要补充UI界面测试 兼容性测试 性能测试 安全测试等用例
5)提交评审
3、项目介绍
4、项目的迭代
5、某功能如何测试的
测试用例设计方案:
功能、性能、安全、网络、兼容性、ui界面、专项测试
6、bug如何定位
通过工具charts定位前后端bug
7、最深刻的bug
8、web和app测试的区别
9、常用的Liunx命令
cd:切换目录
ls:查看文件列表
cp:拷贝文件
mv:移动文件
rm:删除文件
chmod:设置文件权限
cat:浏览文件内容
vi:文件边界
grep:过滤文件内容
操作系统常用命令:
ip addr:查看ip
systemctl stop firewald:关闭防火墙
top:查看cpu使用率
free -m:查看内存使用率
df -h:查看磁盘的使用情况
10、数据库的增删改查
11、接口测试怎么做-流程
对比ui和功能测试来讲,第一需求分析和评审,第二测试计划的编写,第三测试用例的评审和设计,第四用例的执行,第五管理与回归,第六测试报告
接口测试类似,多了接口文档分析和测试脚本构建,在接口文档分析环节主要分析接口的请求和响应,请求中需要包含请求url请求头请求方法和请求参数。
分析响应需要包含响应状态码响应的数据格式响应的信息头响应内容和异常返回信息以及错误代码 分析多个接口之间彼此的依赖关系。
测试脚本的构建环节将接口的用例脚本化通过postman测试工具来执行测试脚本
12、接口关联如何实现
接口测试中的加密参数如何处理:
1)了解接口使用的加密方法md5 rsa等
2)检查接口测试工具是否支持这种加密算法jmeter支持MD5直接使用对应功能就行 3)如果是公司内部特有的算法调用公司的加密算法实现加密
如何做接口之间的数据关联的:
上一个接口的某返回值作为下一个接口的请求参数 从上一个接口的格式判断可以使用json提取器或正则提取器把数据保存到一个变量里 在下一个接口直接使用${变量名}的方式就可以使用这个数据
数据加密MD5
Jmeter接口测试流程:
1)通过接口文档或抓包获取接口的yurl和参数
2)创建线程组 创建HTTP请求 根据接口的地址设置相关的信息
3)根据测试用例的情况修改接口参数调用接口
4)最后对接口的返回值做一些判断断言
13、get和post区别
http常见的请求方法get-url post-请求体,get可以被浏览器缓存 post不行,get长度受限 post没有限制。get安全性差 post安全性好,get可直接通过浏览器访问 post不能
http和https区别:
1)http无需证书 https需要申请证书
2)http明文传输,https加密传输
3)两者的连接方式和端口不一样http是80https是443
14、自动化测试怎么做的
什么是自动化的po模式:
po模式主要分为对象层操作层业务层 对象主要封装某些元素定位的方法 操作层封装元素的一些特定的操作 业务层把一个或多个操作组合成具体业务。
具体实现:以登录页为例:
第一步先实现BasePage基类这个基类主要实现driver的获取;
第二步根据BasePage基类实现对象层封装登录页面的元素定位封装定位用的用户名密码确认按钮等定位方法;
第三步根据封装的定位方法封装他们的操作 比如输入用户名和密码点击确认按钮 ;
第四步根据封装LoginPage页面的操作类实现登录的测试;
自动化测试稳定性:
一个是元素的定位问题、一个是用例之间的依赖问题、一个是数据问题
元素定位问题可以采用智能等待的方式尽可能的避免。
用例依赖可以解耦用例之间的关系让每条用例都从一个共同的页面开始执行比如首页 这就需要在测试框架中采用后置处理方式 使每条用例执行完后都回到首页
测试数据尽可能现用现造 尽量避免使用假数据和死数据
15、元素定位方式
ui自动化定位不到元素的原因
1)定位器选择错误
2)定位字符串错误
3)元素嵌套在ifarme中
4)页面元素没有及时加载
5)元素在新窗口中
6)脚本流程与实际不符
7)元素不在当前页面
app的不定时弹窗:
两种思路:
1)启动一个线程监听弹窗上的元素 比如确认 取消等每隔0.5秒去查找弹窗元素如果有就点掉
2)在所有的操作之前都去增加弹窗的识别缺点造成执行效率的降低
16、性能测试关注指标
1)tps每秒的事务数 代表了性能的好坏 tps越高性能越好
2)平均响应时间 请求的平均耗时响应时间越短性能越好
3)并发数 同时向服务端发起请求的虚拟用户数在不同的工具里面可以使用多个进程或多个线程来实现
4)错误率 失败的请求比例
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
在困境中不屈服,在挑战中不放弃,在失败中不沮丧。每一次努力,都是向梦想更近一步的勇敢迈进。相信自己的能力,坚持不懈,终将收获属于自己的辉煌与成功。
风雨过后,太阳必将照耀。不论前路多么困难,坚持信念,奋力前行。成功需要勇气与毅力,只要心怀梦想,努力奋斗,终将迎来辉煌的明天。相信自己,不止于现状,勇往直前!
没有哪条路是一帆风顺的,没有哪个人是一路独行的。在追求梦想的道路上,最重要的是坚持,不放弃。每一次挫折,都能锻造成更加坚强和勇敢的自己。坚定信念,勇往直前,终将收获无穷的荣耀和胜利。