• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    python编写接口测试文档(以豆瓣搜索为例)

    前言

    很多人会使用postman工具,或者熟悉python,但不一定会使用python来编写测试用例脚本,postman里面可以完整的将python代码复制出来。

    (以下所有内容以豆瓣网站搜索功能为例子)

    一、postman接口用例转换为python测试用例

    打开postman,点击右侧的/>图标,页面右边会显示脚本,顶部修改导出的语言,这边我使用的是Python-Reqyests

    复制脚本,在PyCharm中打开即可,在导入使用之前如果没有reuqests库,可能会报错,我们需要安装reuqests库。

    cmd命令窗口输入:pip install requests

    导出后的脚本格式如下:

    import requests
    
    url = "https://www.douban.com/search?">
    
    payload={'q': '三体'}
    files=[
    
    ]
    headers = {
      'Cookie': 'bid=5bBvkukAbvY'
    }
    
    response = requests.request("POST", url, headers=headers, data=payload, files=files)
    
    print(response.text)
    

    二、转换为pytest测试用例

    1.下面就是转成pytest的测试用例

    import requests
    
    class TestDouban:
    
        def test_douban(self):
            url = "https://www.douban.com/search?">
            payload = {'q': '三体'}
            files = []
            headers = {
              'Cookie': 'bid=5bBvkukAbvY'
            }
            response = requests.request("POST", url, headers=headers, data=payload, files=files)
            print(response.text)
    

    三、封装POST和GET方法

    在一个项目中,根路由的路径是一样的,只是不同功能对应的具体的接口不一致,且POST和GET是目前测试用例中比较通用的方法,所以可以将根路由、POST和GET方法封装成一个通用的类,后面直接调用即可。

    1.common.py—公共类封装

    import requests
    
    class Common:
        def __init__(self):
            # 豆瓣根路由
            self.url_root = "https://www.douban.com>"
    
        # get请求,uri是接口具体地址,params是get请求的参数,如果没有,默认为空
        def get(self, uri, params=''):
            # 拼凑访问地址
            url = self.url_root + uri + params
            # 通过get请求访问对应地址
            response = requests.get(url)
            # 返回request的response结果,类型为requests的Response类型
            return response
    
        # post请求,uri是接口具体地址,params是post请求的参数,如果没有,默认为空
        def post(self, uri, params=''):
            # 拼凑访问地址
            url = self.url_root + uri
            # 有参数,则访问对应的url,并赋值给默认参数data
            if len(params) > 0:
                response = requests.post(url, data=params)
            # 无参数,只需要访问对应的url即可
            else:
                response = requests.post(url)
            # 返回request的response结果,类型为requests的Response类型
            return response
    

    2.具体接口测试用例

    import requests
    
    from common.common import Common
    
    class TestDouban:
        def setup(self):
            self.com = Common()
    
        def test_douban(self):
            uri = "/search?"
            payload = {'q': '三体'}
            response = self.com.post(uri, payload)
    # 由于file不需要,就将file删除了,至于hearder是否要添加可根据需求来定
    

    执行结果如下:

    总结

    到此这篇关于python编写接口测试文档的文章就介绍到这了,更多相关python编写接口测试文档内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • Python接口自动化测试的实现
    • 使用postman进行接口测试的方法(测试用户管理模块)
    • postman和python mock测试过程图解
    • 脚本测试postman快速导出python接口测试过程示例
    上一篇:详解Django模板层过滤器和继承的问题
    下一篇:python3 scrapy框架的执行流程
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    python编写接口测试文档(以豆瓣搜索为例) python,编写,接口,测试,文档,