python基于requests库对get/post/delete/put方法进行封装

本文介绍如何在Python中利用requests库对常见的HTTP请求方法get、post、delete和put进行封装,以简化接口自动化测试中的代码,提高代码的可读性和效率。通过结合unittest+ddt,可以更方便地管理和执行接口测试用例。
摘要由CSDN通过智能技术生成

接口自动化测试经常会重复使用get/post/delete/put请求,不要其烦。现对这几种方法进行封装,大大减少了代码的冗余。

import requests
import pprint,json
import yaml
class HttpApi():
    def __init__(self):
        self.cfg=self.cfg()
    def cfg(self):
        with open(r'F:\测试框架\aip\config.yaml') as f:
            return yaml.load(f, Loader=yaml.FullLoader)

    def send_get(self,url,header=None,body=None):
        re=requests.get(url=self.cfg['host']+url,headers=header,params=body)
        try:
            return re.json()
        except:
            return re
    def send_post(self,url,header,body
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是一个简单的二次封装接口请求类: ```python import requests class ApiRequest: def __init__(self, base_url): self.base_url = base_url def get(self, path, params=None, headers=None): url = self.base_url + path response = requests.get(url, params=params, headers=headers) return response.json() def post(self, path, data=None, json=None, headers=None): url = self.base_url + path response = requests.post(url, data=data, json=json, headers=headers) return response.json() def put(self, path, data=None, json=None, headers=None): url = self.base_url + path response = requests.put(url, data=data, json=json, headers=headers) return response.json() def delete(self, path, headers=None): url = self.base_url + path response = requests.delete(url, headers=headers) return response.json() ``` 使用方法: ```python # 创建对象 api = ApiRequest('https://jsonplaceholder.typicode.com') # GET 请求 response = api.get('/posts') print(response) # POST 请求 data = {'title': 'foo', 'body': 'bar', 'userId': 1} response = api.post('/posts', json=data) print(response) # PUT 请求 data = {'title': 'foo', 'body': 'bar', 'userId': 1} response = api.put('/posts/1', json=data) print(response) # DELETE 请求 response = api.delete('/posts/1') print(response) ``` 在创建 ApiRequest 对象时,需要传入一个基础的 URL,然后就可以使用类中提供的 get、post、put 和 delete 方法进行相应的请求了。每个方法都可以传入不同的参数,比如 GET 请求可以传入 params 和 headers,POST 和 PUT 请求可以传入 data、json 和 headers。每个方法返回的都是响应的 JSON 数据,可以根据具体需求进行处理。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值