使用Python接口自动化测试post请求和get请求,获取请求返回值

引言

我们在做python接口自动化测试时,接口的请求方法有get,post等;get和post请求传参,和获取接口响应数据的方法;

请求接口为Post时,传参方法

我们在使用python中requests库做接口测试时,在做post接口测试传参的时候,需要传入请求体,我们把请求体定义成一个字典类型含有key和value的值,如下

然后请求的时候,会把data赋值给post请求,然而这样是错误的,data的数据类型为dict,接口请求的数据类型为字符串,只不过是json格式的字符串,但是本质是字符串是不会改变的,如下图,直接使用data参数会提示传参失败,没有请求体;

一般情况下,使用request传参时,会传入data或者json,什么情况下传data或者json,我们在接口文档或者系统接口请求时查看它的Content-Type的类型,如下图我们查看登录接口为:application/json,为json格式,则使用json参数

方法一:通过json.dunps(body)转化成json格式的字符串,然后传递给data;

方法二:在传参时直接格式化成json格式传参:

如果content-type为application/x-www-form-urlencoded,为表单格式,则使用data参数

获取接口请求响应数据

我们在使用python接口测试过程中往往会对一个请求接口获取返回值。来进行断言或者传入其他接口 使用,下面我们来看获取返回结果的几种方法;

request 接口请求时,不对数据做处理时,返回数据为requests.models.Response,无法获取到返回值

此时我们需要对返回数据做处理,如下;
response.text # 响应文本数据(字符串)

response.status_code # 响应的状态码,测试时可以用来做接口的断言

response.json() # 返回的数据类型变成了dict,这样就方便我们按照字典的操作去拿数据

通过字典的方法去获取响应数据,不需要进行转化,比较方便

response.content # 响应返回的内容(二进制),一般用来获取返回数据为文件,图片,或者爬取视频

response.cookies # 获取返回的cookies信息

最后作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些软件测试的学习资源,希望能给你前进的路上带来帮助。

视频文档获取方式:

这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

相关推荐
麻辣布丁1 分钟前
java集合篇面试模拟
java·开发语言·面试
niucloud-admin3 分钟前
JAVA V6 多商户商城 开发文档——插件开发规范
java·开发语言
新时代牛马5 分钟前
ATF/ TEE / REE 与ARM 异常级别EL 安全体系完整篇:TrustZone硬件到 SMC 进OP-TEE的全链路
arm开发·python·安全
寥落半伤感6 分钟前
在Pycharm中一键迅速安装包及查看虚拟环境中包名的方法
ide·python·pycharm
呆呆在发呆.15 分钟前
Agnet狼人杀
人工智能·python·microsoft
hhzz29 分钟前
【OpenCV 入门到精通 04】视频入门与绘图交互:从摄像头到鼠标画笔
人工智能·python·opencv·计算机视觉·音视频·交互
Thomas.Sir29 分钟前
第40课:TensorFlow|模型推理部署前置知识【离线推理、接口调用基础】
人工智能·python·tensorflow
2601_9623878231 分钟前
多源数据查询指南:MySQL 联邦、Python 聚合与 Presto 引擎全对比
python·mysql·数据集成·presto·联邦查询
海盗123432 分钟前
DSH 接入 OpenCode Go 报 400 MissingSessionID:从 LLM 语义层退到 fetch 传输层的完整排障
开发语言·后端·golang
weixin1997010801638 分钟前
《Mercari OTA 直连接入:日本二手电商出海的API通道与600次/分钟限流实战》(附Python源码)
开发语言·数据库·python