接口自动化测试框架(基于pytest)
hoannnnnn
这个作者很懒,什么都没留下…
展开
-
六、测试报告
测试报告的呈现是基于Allure,具体呈现如下图:原创 2021-05-20 00:29:19 · 76 阅读 · 0 评论 -
五、用例执行
实现各个环境切换,一套脚本只要调通了,基本接口没有变动,可以大大的降低测试成本,主要用的是argparse库。 代码如下: #!/usr/bin/python # -*- coding: UTF-8 -*- # @Author :zaygee # @time :2020/12/3 17:17 # @file :runtest.py import argparse import shutil import sys import time from shutil import copy原创 2021-05-20 00:27:45 · 218 阅读 · 0 评论 -
四、用例数据共享
问题1:接口响应参数提取,并应用于下个请求?同一个接口参数共享减少多余的接口调用? 解决问题:利用conftest.py全局配置文件在pytest中的特性 + globals()函数 conftest配置文件实现不同接口数据共享 这里我们利用pytest的conftest全局配置文件,定义我们需要的接口及返回提取的数据。 例如我们有以下场景: 实现获取作品详情的接口自动化,根据实际的业务场景,需要先保存作品,才能获取到该作品的详情。 那么我们在conftest文件定义保存接口及返回获..原创 2021-05-20 00:26:07 · 194 阅读 · 0 评论 -
三、用例组织&用例设计
概要 这里我们测试一个接口有两个文件。一个是接口定义、一个测试用例集。 接口定义示例 每个接口定义一个类,url和请求参数为类方法,方便复用! # -*- coding: utf-8 -*-# # file: coll_work.py # Author: zaygee # Date: 2021/5/13 from config import env class CollWork: """设置该作品为协作作品""" @classme原创 2021-05-20 00:22:26 · 158 阅读 · 0 评论 -
二、请求方法封装
这里主要是为了结合输出日志,及测试报告的呈现 普通接口请求方法封装 #!/usr/bin/python # -*- coding: UTF-8 -*- # @Author :zaygee # @time :2020/12/3 16:30 # @file :api_method.py import json import os import allure import jsonpath import requests from common import logger fr.原创 2021-05-20 00:18:46 · 144 阅读 · 0 评论 -
一、接口自动化框架概要
项目技术选型 原本想使用的httprunner3,鉴于其一个case就是一个py文件,仅个人短浅的见识觉得不是很方便(文件太多了岂不)。。又有测websocket接口的需求,于是乎想把它们整一起!所以打算自己搭一个练练手,主要是基于Pytest + Requests(Websocket) + Allure。 项目结构 |-- common/ |-- |-- sql_info.py # 数据库连接信息 |-- |-- api_method .py # 封装requests库方法原创 2021-05-20 00:16:19 · 218 阅读 · 1 评论