pytest-yaml 测试平台-1.新增项目和用例(有平台体验地址)

前言

基于pytest-yaml-yoyo 框架写的接口测试平台,在web网页平台上维护yaml测试用例,执行用例,并查看allure报告。

平台体验地址http://47.108.155.10/register.html

可以自己注册账号试用(有疑问联系本人wx:283340479)

pytest-yaml-yoyo 框架简介

pytest-yaml-yoyo 框架是上海-悠悠 2023年自主开发的pytest结合yaml框架。gitee项目地址https://gitee.com/yoyoketang/pytest-yaml-yoyo

本框架只需pip安装即可上手

复制代码
pip install pytest-yaml-yoyo

目前框架已经成熟,实现了常见的一些功能,基本项目结构执行以下命令

复制代码
pytest --start-project

执行完成会自动生成以下项目结构文件

yaml 格式用例示范

yaml 复制代码
config:
  name: 参数关联-用例a提取结果给到用例b

test_a:
  name: extract提取结果
  request:
    method: POST
    url: /post
    json:
      username: test
      password: "123456"
  extract:
      url:  body.url
  validate:
  - eq: [status_code, 200]
  - eq: [headers.Server, gunicorn/19.9.0]
  - eq: [$..username, test]
  - eq: [body.json.username, test]

test_b:
  name: 引用上个接口返回
  request:
    method: GET
    url: http://httpbin.org/get
    headers:
      url: ${url}
  validate:
  - eq: [status_code, 200]

pytest-yaml-yoyo 测试平台

基于上面的框架开发了网页版的测试平台,可以支持多个项目的维护,并且每个项目支持测试,uat等多环境配置,以及多个数据库配置。

新增项目

每个项目下自动插件conftest.py 插件和 config.py配置文件

config.py配置文件可以配置多个环境

配置数据库,企业微信,钉钉通知等

配置环境映射关系

conftest.py 插件可以自定义函数和fixture相关功能

总的来说就是把平常在pycharm上写代码的操作,转到web网页上更直观的管理多项目了。

新增用例

编辑用例支持yaml格式和json格式

用例列表展示

执行用例生成allure报告

每个用例都可以独立执行,生成allure报告

选择运行环境:test/uat

用例后台执行

执行完成刷新即可查看报告

allure报告展示详情

总结

网页版平台管理用例的好处:

1.多项目可视化管理

2.可以制定不同测试策略

3.方便管理测试结果

4.适合团队多人维护

5.统计方便

6.上手更简单

相关推荐
Birdy_x2 小时前
接口自动化项目实战(1):requests请求封装
开发语言·前端·python
我爱学习好爱好爱2 小时前
Ansible 常用模块详解:lineinfile、replace、get_url实战
linux·python·ansible
一轮弯弯的明月3 小时前
Python基础-速通秘籍(下)
开发语言·笔记·python·学习
千寻girling4 小时前
面试官 : “ 说一下 Python 中的常用的 字符串和数组 的 方法有哪些 ? ”
人工智能·后端·python
第一程序员4 小时前
Python基础学习路径:非科班转码者的入门指南
python·github
u0136863825 小时前
将Python Web应用部署到服务器(Docker + Nginx)
jvm·数据库·python
smchaopiao5 小时前
Python中字典与列表合并的问题与解决方法
开发语言·python
卡尔特斯6 小时前
Ultralytics YOLO26 自动对指定标注文件夹区分标注素材脚本与训练脚本
python·openai
2501_921649496 小时前
期货 Tick 级数据与基金净值历史数据 API 接口详解
开发语言·后端·python·websocket·金融·区块链
njidf6 小时前
实战:用Python开发一个简单的区块链
jvm·数据库·python