目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、为什么需要抓包?
1)从功能测试角度
通过抓包查看隐藏字段
Web 表单中会有很多隐藏的字段,这些隐藏字段一般都有一些特殊的用途,比如收集用户的数据,预防 CRSF 攻击,防网络爬虫,以及一些其他用途。
这些隐藏字段在界面上都看不到,如果想检测这些字段,就必须要使用抓包工具。
2)通过抓包工具了解协议内容
方便开展接口和性能测试
性能测试方面,性能测试其实就是大量模拟用户的请求,所以我们必须要知道请求中的协议内容和特点,才能更好的模拟用户请求,分析协议就需要用到抓包工具;
接口测试方面,在接口测试时,虽然我们尽量要求有完善的接口文档。但很多时候接口文档不可能覆盖所有的情况,或者因为文档滞后,在接口测试过程中,还时需要借助抓包工具来辅助我们进行接口测试。
3)需要通过抓包工具,检查数据加密
安全测试方面,我们需要检查敏感数据在传输过程中是否加密,也需要借助抓包工具才能检查。
4)处理前后端 bug 归属之争
在我们提交 bug 的时候,经常会出现前端(客户端展示)和后端(服务端的逻辑)的争议,那么可以通过抓包工具,确实是数据传递问题还是前端显示的问题。
如果抓出来的数据就有问题的话,那么一般是后端的问题;如果抓出来的数据是正确的,那么基本上可以断定是前端显示的问题。
5)通过抓包分析
可以更好的理解整个系统
经常使用抓包工具辅助测试,可以很好的了解整个系统,比如数据传输过程前后端的关系,以及整个系统的结构。
特别是对现在的微服务架构的产品,抓包能够更好的梳理和掌握整个系统各个服务之间的关系,大大增加测试的覆盖度。另外还可以增进对代码、HTTP 协议方面知识的理解。
2、抓包实例
常用的抓包工具有 Fiddler、wireshark、Charles 以及浏览器自带 F12 等多种工具。那么在这里给大家演示如何用浏览器自带 F12 来进行抓包。
第 1 步:打开浏览器后,按 F12,选择网络–点击设置按钮–勾选持续记录
第 2 步:在浏览器上操作,在网络中就可以看到 HTTP 请求信息(登录操作)
第 3 步:找到操作的请求信息(登录操作)
第 4 步:获取请求的四要素,用于做接口测试
1-请求地址:
http://wy.lemonban.com:3000/callComponent/login/doLogin?version=2.0
2-请求方法:post
3-请求参数:
{
"logo":"HC",
"username":"wuye_kemi",
"passwd":"xxxx",
"validateCode":"LEMON",
"errorInfo":""}
username:登录时的用户名
passwd:登录时的密码
validateCode:登录时的验证码
4-响应结果:
{"userName":"wuye_kemi","userId":"302021110504836175","token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJqY"}
要通过抓包的方式来进行接口测试,需要具有一定的网络协议基础,这些基础可以让你快速找到请求和接口信息。
其次是在进行接口测试过程中,我们最好与开发进行沟通,因为他们更加清楚每个参数的含义以及类型约束,想要更全面的测试接口,可以将抓包信息整理成文档,并与开发沟通完善文档。
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
每个人都应该拥有自己的梦想,并为之付出努力和汗水,保持乐观积极的心态,勇往直前,不断拼搏,最终才能实现自己的目标。
成功并非一日之功,而是需要付出长期不懈的努力和辛勤的汗水。相信自己,勇敢追求自己的梦想,在每一次尝试中吸取教训,最后必定会有所收获。
只有通过持续学习和发展,才能够不断提升自身的实力和竞争力,保持对生活的热爱与激情,朝着自己的梦想前进,最后实现人生的辉煌。