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

目录
  • 前言
  • 一、postman接口用例转换为python测试用例
  • 二、转换为pytest测试用例
  • 三、封装POST和GET方法
    • 1.common.py—公共类封装
    • 2.具体接口测试用例
  • 总结

前言

很多人会使用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编写接口测试文档内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python脚本完成post接口测试的实例

    一个post类型的接口怎么编写脚本实现 1.打开网页,在fiddler上获取到接口的URL 2.用Python的requests库实现 import requests new_url="http://10.31.143.2:8989/system/systemOrgan/list" params = {"access_token": "807ad226-cbcc-4620-9544-8f53e1d51405"} payload = { "

  • 用Python进行websocket接口测试

    我们在做接口测试时,除了常见的http接口,还有一种比较多见,就是socket接口,今天讲解下怎么用Python进行websocket接口测试. 现在大多数用的都是websocket,那我们就先来安装一下websocket的安装包. pip install websocket-client 安装完之后,我们就开始我们的websocket之旅了. 我们先来看个炒鸡简单的栗子: import websocket ws = websocket.WebSocket() ws.connect("ws://

  • 基于Python的接口测试框架实例

    背景 最近公司在做消息推送,那么自然就会产生很多接口,测试的过程中需要调用接口,我就突然觉得是不是可以自己写一个测试框架? 说干就干,由于现有的接口测试工具Jmeter.SoupUI等学习周期有点长,干脆自己写一个吧,不求人,所有功能自己都能一清二楚. 当然,写工具造轮子只是学习的一种方式,现成成熟的工具肯定比我们自己的写的好用. 开发环境 ------------------------------------------------------------- 操作系统:Mac OS X EI

  • 对python自动生成接口测试的示例讲解

    在python中Template可以将字符串的格式固定下来,重复利用. 同一套测试框架为了可以复用,所以我们可以将用例部分做参数化,然后运用到各个项目中. 代码如下: coding=utf-8 ''' 作者:大石 功能:自动生成pyunit框架下的接口测试用例 环境:python2.7.6 用法:将用户给的参数处理成对应格式,然后调用模块类生成函数,并将参数传入即可 ''' from string import Template #动态生成单个测试用例函数字符串 def singleMethod

  • Python接口测试get请求过程详解

    python 做借口测试用到的是requests模块,首先要导入requests库,pip install requests 1.get直接请求方式 以豆瓣网为例: url = 'https://read.douban.com/' respose = requests.get(url=url) # status_code 为返回的状态码 print(respose.status_code) # text为返回的数据 print(respose.text) 请求结果:返回状态码为200,表明请求的

  • python接口自动化测试之接口数据依赖的实现方法

    在做自动化测试时,经常会对一整套业务流程进行一组接口上的测试,这时候接口之间经常会有数据依赖,那么具体要怎么实现这个依赖呢. 思路如下: 抽取之前接口的返回值存储到全局变量字典中. 初始化接口请求时,解析请求头部.请求参数等信息中的全局变量并进行替换. 发出请求. 核心代码实现: 抽取接口的返回值存储到全局变量字典中 # 抽取接口的返回值存储到全局变量字典中 if set_global_vars and isinstance(set_global_vars, list): for set_glo

  • python实现接口并发测试脚本

    常用的网站性能测试指标有:并发数.响应时间.吞吐量.性能计数器等. 1.并发数 并发数是指系统同时能处理的请求数量,这个也是反应了系统的负载能力. 2.响应时间 响应时间是一个系统最重要的指标之一,它的数值大小直接反应了系统的快慢.响应时间是指执行一个请求从开始到最后收到响应数据所花费的总体时间. 3.吞吐量 吞吐量是指单位时间内系统能处理的请求数量,体现系统处理请求的能力,这是目前最常用的性能测试指标. QPS(每秒查询数).TPS(每秒事务数)是吞吐量的常用量化指标,另外还有HPS(每秒HT

  • 利用Python如何实现数据驱动的接口自动化测试

    前言 大家在接口测试的过程中,很多时候会用到对CSV的读取操作,本文主要说明Python3对CSV的写入和读取.下面话不多说了,来一起看看详细的介绍吧. 1.需求 某API,GET方法,token,mobile,email三个参数 token为必填项 mobile,email 必填其中1项 mobile为手机号,email为email格式 2.方案 针对上面的API,在做接口测试时,需要的测试用例动辄会多达10+, 这个时候采用数据驱动的方式将共性的内容写入配置文件或许会更合适. 这里考虑把AP

  • python利用requests库进行接口测试的方法详解

    前言 之前介绍了接口测试中需要关注得测试点,现在我们来看看如何进行接口测试,现在接口测试工具有很多种,例如:postman,soapui,jemter等等,对于简单接口而言,或者我们只想调试一下,使用工具是非常便捷而且快速得,但是对于更复杂得场景,这些工具虽然也能实现,但是难度要比写代码更大,而且定制化受到工具得功能影响,会 遇到一些障碍,当然我们还要实现自动化等等,鉴于以上因素,我们还是要学会使用代码进行接口测试,便于维护与扩展,或者算是我们知识得补充把~ requests库是python用来

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

    目录 前言 一.postman接口用例转换为python测试用例 二.转换为pytest测试用例 三.封装POST和GET方法 1.common.py-公共类封装 2.具体接口测试用例 总结 前言 很多人会使用postman工具,或者熟悉python,但不一定会使用python来编写测试用例脚本,postman里面可以完整的将python代码复制出来. (以下所有内容以豆瓣网站搜索功能为例子) 一.postman接口用例转换为python测试用例 打开postman,点击右侧的</>图标,页面

  • Python操作word文档的示例详解

    目录 写在前面 创建一个文档 先实现第一步,写入一个标题 添加文字段落 列表的添加 图片的添加 表格添加 相关样式设置 页眉和页脚 写在前面 python-docx 不支持 doc 文档,一定要注意该点,如果使用 doc 文档,需要提前将其用 Word 相关软件转换为 docx 格式. doc 和 docx 是存在本质差异的,一个是二进制,另一个 XML 格式的文件. 模块的安装 pip install python-docx . 以下网址首先准备好 官方手册:https://python-do

  • Python 读取 Word 文档操作

    目录 前言 Python 读取 Word 文档 安装 python-docx库 前言 Word 文档 (.docx) 是另一种主要用于存储文本的常见文档.它们通常由 Microsoft Office 创建和编辑,但也可以使用其他工具生成兼容文件.它们通常是共享可编辑文件的最常见格式,同时在分发文档时也非常常见. Python 读取 Word 文档 安装 python-docx库 在本节中,我们将学习如何使用 Python 从 Word 文档中提取文本信息.我们主要使用 python-docx 库

  • Python操作word文档插入图片和表格的实例演示

    前言 图片是Word的一种特殊内容,这篇文章主要介绍了关于Python操作word文档,向里面插入图片和表格的相关内容,下面话不多说了,来一起看看详细的代码 实例代码: # -*- coding: UTF8 -*- from docx import Document from docx.shared import Pt doc = Document() # 文件存储路径 path = "C:\\Users\\Administrator\\Desktop\\word文档\\" # 读取文

  • Python实现Word文档转换Markdown的示例

    随着SaaS服务的流行,越来越多的人选择在各个平台上编写文档,制作表格并进行分享. 同时,随着Markdown语法的破圈,很多平台开始集成支持这种简洁的书写标记语言,这样可以保证平台上用户文档样式的统一性. 但是在一些场景下,我们还是会在本地的Office软件上写有很多文档,或者历史遗留了很多本地文档. 如果我们需要将其上传到各大平台,直接复制粘贴,大概率是会造成文档内容结构和样式的丢失.于此我们需要将其转换为 Markdown 语法. 很多桌面软件(比如Typora)都提供了导入 Word 文

  • 用 Python 写的文档批量翻译工具效果竟然超出想象

    大家好,我是启航. 本文将给大家分享一个实用的Python办公自动化脚本 「利用Python批量翻译英文Word文档并保留格式」,最终效果甚至比部分收费的软件还要好!先来看看具体的工作内容. 一.需求描述 手上有大量外文文档(本案例以5份为例,分别命名为 test1.docx test2.docx 以此类推),其中一份如下: 基本需求:「批量将这些文档的内容全部翻译成中文,并转存到新的文件中」,效果如下: 高级需求:基本需求满足的同时,要求 「保留原文档的格式」,效果如下: 二.逻辑梳理 1.

  • 用python将word文档合并实例代码

    目录 背景: 设计思路: 脚本环境说明: 完整代码: 功能执行效果图: 总结: 背景:         由于工作需要,现在有这么一个需求,要合并大量的word文档,而且要在不同的目录下找到同一个人的word文档,进行合并,最终输出一个合并后的word文档.一般来说几个或者十几个量不多的话,就手工合并一下好了,但现在这个量是真的大.目录有十多个,每个目录又有50多个不同人的word文档,而且同一个人在不同目录下又不一定都有word文档,因此,整个合并工作就出现了人工操作的困难: 工作量多:容易疏漏

  • Python实现Word文档样式批量处理

    这里批量处理word文档的操作主要是通过python-docx非标准库实现的,通过定位到文档对象.再到段落.最后到一行文本从而完成针对文字对象的处理. 使用pip的方式安装python-docx pip install python-docx 将实现过程中需要的模块导入进来 from docx import Document # 文档处理对象 from docx.shared import RGBColor, Pt, Cm # 文本样式处理 import os # 应用/文件处理 import

  • Python实现复制文档数据

    目录 前言 环境使用 模块使用 基本思路流程 一. 分析数据来源 二. 代码实现步骤 代码展示 前言 我们百度搜索一些东西得时候,经常找到文档里面 然后就会发现需要充值才能复制!怎么可以不花钱也保存呢? 今天就分享给大家一个python获取文档数据得方法 环境使用 python 3.8 pycharm 模块使用 requests >>> 数据请求模块 pip install requests docx >>> 文档保存 pip install python-docx r

  • python读取word文档的方法

    本文实例讲述了python读取word文档的方法.分享给大家供大家参考.具体如下: 首先下载安装win32com from win32com import client as wc word = wc.Dispatch('Word.Application') doc = word.Documents.Open('c:/test') doc.SaveAs('c:/test.text', 2) doc.Close() word.Quit() 这种方式产生的text文档,不能用python用普通的r方

随机推荐