美文网首页python进阶课
接口自动化之网络请求封装

接口自动化之网络请求封装

作者: 炒鸡可耐的小葵花 | 来源:发表于2019-12-15 21:07 被阅读0次
接口.png

本小仙女在之前写过一篇文章,文章的名字叫做《你以为你了解了http以及post和get?》,其实这篇文章主要讲了网络请求的原理。然后重点讲了一下post请求和get请求。今天,偶想讲的呢是自动化测试中的“网络请求封装”。一般来说,现在市面上大部分的公司也就使用post或者get两种请求方式。所以想要了解更多关于http请求,请移步至https://www.jianshu.com/p/32860968f631

这边就简单的封装了一个python中请求网络接口的方法,此方法通过传入请求方法、请求路径、请求参数等入参,进行调用,代码如下,调用即可:

import requests
import json


class CommonRequests:
    def __init__(self):
        self.session = requests.Session()

    def request(self, method, url, data=None, is_json=False, **kwargs):
        """
        发送请求
        :param method: POST、GET
        :param url: 请求路径
        :param data: 请求参数
        :param is_json: 入参是否为json格式
        :param kwargs: 请求头等其他的入参
        :return: 接口返回
        """
        method = method.upper()
        if isinstance(data, str):  # 对传入的参数进行简单处理
            try:
                data = json.loads(data)
            except Exception as e:
                print("异常为{}".format(e))
                data = eval(data)
        if method == "GET":
            response = self.session.request(method=method, url=url, params=data, **kwargs)
        elif method == "POST":
            if is_json:  # 请求参数是json格式
                response = self.session.request(method=method, url=url, json=data, **kwargs)
            else:
                response = self.session.request(method=method, url=url, data=data, **kwargs)
        else:
            response = None
        return response

    def close(self):
        self.session.close()

相关文章

  • 接口自动化之网络请求封装

    本小仙女在之前写过一篇文章,文章的名字叫做《你以为你了解了http以及post和get?》,其实这篇文章主要讲了网...

  • Android16-网络请求的封装

    1. 封装HttpURLConnection的网络请求 首先定义一个接口作为网络请求结果的回调 然后封装网络请求的...

  • 小程序请求API接口,网络请求封装

    概述 前几日关注的用户问我有没有封装好的小程序网络请求接口,那么小程序请求API接口,网络请求封装,我们应该怎么编...

  • 网络请求

    ios开发 合理封装请求接口 概述 如今大多的app都会与网络打交道,作为开发者 合理的对网络后台请求接口进行封装...

  • Android-Retrofit+RxJava+OkHttp

    Retrofit Retrofit的本质 准确来说,Retrofit只是负责对网络请求接口的封装,真正的网络请求工...

  • Retrofit 2.6.2 源码分析

    Retrofit 2.6.2 源码分析 原文链接Retrofit 是对网络请求接口的封装,它内部最终的网络请求还是...

  • MVVM在网络中应用(OkHttp+Retrofit+Gson+

    1.封装请求地址常量类 2.封装网络工具类 3.封装接口类 4.封装DTO类——即返回的数据封装模型 5.封装请求...

  • iOS封装网络请求接口

    概述 如今大多App都会与网络打交道,作为开发者,合理的对网络后台请求接口进行封装十分重要。本文要介绍的就是一种常...

  • Retrofit2

    网络请求的工作本质上是OkHttp完成,而 Retrofit 仅负责 网络请求接口的封装。App通过Retrofi...

  • vue_axios请求封装、异常拦截统一处理

    1、前端网络请求封装、异常统一处理 vue中采用axios处理网络请求,避免请求接口重复代码,以及各种网络情况造成...

网友评论

    本文标题:接口自动化之网络请求封装

    本文链接:https://www.haomeiwen.com/subject/utzbhctx.html