接口自动化行情+pytest常用的库+cookie/session鉴权
一.常用的接口自动化框架
1.市面上主流的接口测试工具:(适用于中小型公司或者项目)
Postman+Newman+Git+Jenkins
Jmeter+Ant+Git+Jenkins
目前主流的接口自动化测试技术:(适用于大小型公司或项目)
Python+requests+pytest+allure+jenkins
二. Requests库简介
requests用来发送HTTP请求以及接受HTTP响应的python第三方库,主要用于接口自动化库,安装方式:
pip install requests
三,request库常用的方法
不管是get/post/put/delete方法,都是调用的requests.request方法。而requests.request方法调用的是session.request()方法。
- request.post方法的传参方式有2种: data,json
data和json传参以及Content-Type的关系如下:
1.data传参:报文是dict类型,那么默认Content-Type: application/x-www-form-urlencoded
data传参:报文时str类型,那么默认Content-Type: text/plain
2.json传参: 报文可以是dict类型,那么默认Content-Type:applicaton/json
所以:
data: 可以传纯键值对的dict(非嵌套的dict),也可以传str格式(如果是嵌套字典,那么就需要使用json.dumps()把嵌套字典转化成json字符串传参)
json:可以传任何形式的dict(包括嵌套的dict)
json.loads(xx) 把json字符串转化为dict格式
json.dumps(xx) 把dict格式转化为json字符串
ps:在python种,json是dict类型的字符串格式。
四。requests模块返回的response对象详解
res.cookies
res.headers
res.request.xxx
res.status_code
res.json()
res.text
res.content
五. 请求必须带请求头的接口,以及需要cookie鉴权和session鉴权的接口
90%以上的基于web接口都有cookie鉴权
两种解决方法:
- 1.使用cookie关联
res=requests.get(url,params)
cookies_res=res.cookies
requests.get(url2,params,cookies=cookies_res)
- 2.使用session关联
sess=requests.session()
ers=sess.get(url,parama)
使用sess这一个相同的会话来进行http请求,那么所有请求都是同一个会话,就不用再传入cookie值了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)