使用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信息
????????????? 【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】
一、Python编程入门到精通
二、接口自动化项目实战?
三、Web自动化项目实战
四、App自动化项目实战?
五、一线大厂简历
六、测试开发DevOps体系?
七、常用自动化测试工具
八、JMeter性能测试?
九、总结(尾部小惊喜)
生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!
生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!
只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!?
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!?
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!