从抓包砍到接口测试,五分钟看完全过程解析,还说你不会测试?
一、为什么抓包
1.从功能测试角度,通过抓包查看隐藏字段
Web 表单中会有很多隐藏的字段,这些隐藏字段一般都有一些特殊的用途,比如收集用户的数据,预防 CRSF 攻击,防网络爬虫,以及一些其他用途。这些隐藏字段在界面上都看不到,如果想检测这些字段,就必须要使用抓包工具。
通过抓包工具了解协议内容,方便开展接口和性能测试
性能测试方面,性能测试其实就是大量模拟用户的请求,所以我们必须要知道请求中的协议内容和特点,才能更好的模拟用户请求,分析协议就需要用到抓包工具;接口测试方面,在接口测试时,虽然我们尽量要求有完善的接口文档。但很多时候接口文档不可能覆盖所有的情况,或者因为文档滞后,在接口测试过程中,还时需要借助抓包工具来辅助我们进行接口测试。
需要通过抓包工具,检查数据加密
安全测试方面,我们需要检查敏感数据在传输过程中是否加密,也需要借助抓包工具才能检查。
处理前后端 bug 归属之争
在我们提交 bug 的时候,经常会出现前端(客户端展示)和后端(服务端的逻辑)的争议,那么可以通过抓包工具,确实是数据传递问题还是前端显示的问题。如果抓出来的数据就有问题的话,那么一般是后端的问题;如果抓出来的数据是正确的,那么基本上可以断定是前端显示的问题。
通过抓包分析,可以更好的理解整个系统
经常使用抓包工具辅助测试,可以很好的了解整个系统,比如数据传输过程前后端的关系,以及整个系统的结构。特别是对现在的微服务架构的产品,抓包能够更好的梳理和掌握整个系统各个服务之间的关系,大大增加测试的覆盖度。另外还可以增进对代码、HTTP 协议方面知识的理解。
二、如何抓包
常用的抓包工具有 Fiddler、wireshark、Charles 以及浏览器自带 F12 等多种工具。那么在这里给大家演示如何用 浏览器自带 F12 来进行抓包。
第 1 步:打开浏览器后,按 F12,选择网络--点击设置按钮--勾选持续记录
第 2 步:在浏览器上操作,在网络中就可以看到 HTTP 请求信息(登录操作)
第 3 步:找到操作的请求信息(登录操作)
第 4 步:获取请求的四要素,用于做接口测试
1-请求地址:
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"}
三、Postman 接口测试实战
通过 F12 抓包后我们获取到了相关的接口信息,接下来就可以用 postman 接口工具来进行接口的测试了。
依次把请求地址、请求方式、请求参数填入 postman 工具中,点击 Send 发送,再核对响应结果与抓包响应结果即可。这样子一个简单的接口调试就完成了。
四、总结
如果要通过抓包的方式来进行接口测试,需要具有一定的网络协议基础,这些基础可以让你快速找到请求和接口信息。
其次是在进行接口测试过程中,我们最好与开发进行沟通,因为他们更加清楚每个参数的含义以及类型约束,想要更全面的测试接口,可以将抓包信息整理成文档,并与开发沟通完善文档。
有接口文档再进行用例设计与接口执行才是规范的测试流程哦。
软件测试工程师自学教程:
这才是2022最精细的自动化测试自学教程,我把它刷了无数遍才上岸字节跳动,做到涨薪20K【值得自学软件测试的人刷】
软件测试工程师月薪2W以上薪资必学技能 — Python接口自动化框架封装.
美团面试真题_高级测试25K岗位面试 — 软件测试人都应该看看
软件测试必会_Jmeter大厂实战 — 仅6步可实现接口自动化测试
最后: 可以在公众号:伤心的辣条 ! 自行领取一份216页软件测试工程师面试宝典文档资料【免费的】。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
我推荐一个【Python自动化测试交流群:746506216】,大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,助你快速进阶Python自动化测试/测试开发,走向高薪之路。
喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!
相关文章
- 软件测试中的白盒测试,这些技巧你知道吗?
- 聊一聊 golang 的测试与性能调优
- 技术分享 | 接口自动化测试中如何对xml 格式做断言验证?
- 技术分享 | 接口自动化测试中,如何做断言验证?
- 一文盘点:性能测试常见的7大指标(文末送性能测试题库)
- 测试开发基础,教你做一个完整功能的Web平台之环境准备
- 接口测试的痛点和解决办法
- 干货|接口测试必备技能-常见接口协议解析
- 技术部突然宣布:JAVA开发人员全部要会接口自动化测试框架
- 全网最完整,接口测试总结彻底打通接口自动化大门,看这篇就够了......
- 详细python接口自动化测试requests库模块实战教程
- 测试为什么分白盒、黑盒、单元、集成测试?
- Jmeter 如何才能做好接口测试?
- 一文揭秘利用python+unittest实现Webscoket协议接口测试
- 如何编写有效的接口测试?
- 技术分享 | 接口自动化测试如何处理 Header cookie
- 关于接口测试那些事
- 【测试的艺术】测试用例质量如何衡量
- Python WebDriver自动化测试
- 《WEB安全渗透测试》(18)DedecmsV5.7越权漏洞+前台重置管理员密码漏洞复现(2)
- 在Ubuntu上为Android系统内置C可执行程序测试Linux内核驱动程序
- Requests接口测试-对cookies的操作处理(三)
- LoadRunner Vuser接口测试脚本 Post举例
- 第三方支付系统性能测试要点分析
- 平台服务器测试2—接口功能测试