接口自动化学习笔记

1、介绍

目前市面上主流的接口测试工具:(适用于中小型公司或项目)

postman+Newman+git+Jenkins

jmeter+ant+git+Jenkins

目前主流的接口自动化测试技术:(适用于大小型公司或项目)

python+requests+pytest+allure+jenkins

2、requests库介绍

requests是用来发送http请求和接收http响应的python第三方库,主要用于接口自动化测试

pip install requests

3、requests库常用的方法

1)requests.get() //url是接口地址,params用于传参

2)requests.post() //url是接口地址,data用于传参,json用于传参

data和json传参的区别:主要通过请求头Content-Type进行区分。

Content-Type:作用是服务器要求传入的报文内容类型。

请求:请求方式、请求路径、请求头、请求正文

postman四种传参方式对应的Content-Type的值如下:

Content-Type
form-datamultipart/form-data;boundary=<calculated when request is sent>文件上传
x-www-from-urlencodedeapplication/x-www-form-urlencodede表单提交
rawtext:text/plain; javascript:application/javascript; json:application/json; html:text/html;  xml:application/xml
binaryapplication/binary

data和json传参以及Content-Type的关系如下:

①data传参:报文是dict类型,默认Content-Type:application/x-www-form-urlencodede

   data传参:报文是str类型,默认Content-Type:text/plain

②json传参:报文可以是dict类型也可以是str类型(dict类型偏多),默认Content-Type:application/json

总结:data可以传纯键值对的dict(非嵌套的dict),也可以传str格式(如果是嵌套自动,需要使用json.dumps() 转化成json字符串)。json可以传任何形式的字典(包含嵌套的dict)。

json.loads()       //把json字符串转化成dict格式

json.dumps()    //把dict格式转化成json字符串

3)requests.put()

4)requests.delete()

5)requests.request()   //可以发送所有类型的请求:post、get、put、delete

总结:不管是get还是post还是put和delete,都是调用的requests.request方法,而requests.request方法调用的是session.request()。

4、requests模块返回的response对象

res.json()                   //获取返回的字典格式的数据

res.text()                    //获取返回的字符串格式的数据

res.content()              //获取返回的bytes字节类型的数据

res.status_code()      //获取返回的状态码

res.reason()              //获取返回额状态信息

res.cookies()            //获取返回的cookies信息

res.headers()           //获取返回的响应头

res.request.XXX()    //获取请求数据,例如:请求头,请求参数等

5、请求必须带请求头的接口,以及需要cookie鉴权和session鉴权的接口

两种解决方式:

1)使用cookie关联

2)使用session关联:常用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值