接口自动化--requests库封装
前言
不管是自动化大佬还是自动化小白,都知道我们用python写接口自动化测试肯定是要用requests库来封装请求类的,下面就简单介绍下requests这个库
安装
一般都是直接采用pip命令安装:pip install requests
官方文档
官方文档的路径:https://cn.python-requests.org/zh_CN/latest/
在官方文档你可以看到关于requests的用法。 ps:官方文档是最靠谱的
废话不多说了直接上干货
下面是封装的不保存cookies的类
class HttpRequest: """不保存cookies的请求类""" def get(self, url, param=None, headers=None, cookies=None): """get请求""" res = requests.get(url, param=param, headers=headers, cookies=cookies) return res def post(self, url, data=None, json=None, param=None, headers=None, cookies=None): """post请求""" res = requests.post(url, data=data, json=json, param=param, headers=headers, cookies=cookies) return res def visit(self, url, method, param=None, data=None, json=None, headers=None, cookies=None): """可在method参数选择get、post请求方式""" res = None if method == "POST" or method == "post": res = requests.post(url, param=param, data=data, json=json, headers=headers, cookies=cookies) elif method == "GET" or method == "get": res = requests.get(url, param=param, headers=headers, cookies=cookies) return res def get_json(self, url, method, param=None, data=None, json=None, headers=None, cookies=None): """返回的是json格式的响应体""" res = None if method == "POST" or method == "post": res = requests.post(url, data=data, json=json, headers=headers, cookies=cookies) elif method == "GET" or method == "get": res = requests.get(url, param=param, headers=headers, cookies=cookies) return res.json()
以上是直接用的requests封装的类,其实还可以用Session()类来封装,用Session()类封装时有一个好处的,用这个类封装的话就不用去手动传cookies了。
-------------------------------------学无止境,欢迎大家提意见,共同交流进步----------------------------------------------