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.上手更简单

相关推荐
惜.己3 分钟前
使用python读取json数据,简单的处理成元组数组
开发语言·python·测试工具·json
都叫我大帅哥1 小时前
Python的Optional:让你的代码优雅处理“空值”危机
python
曾几何时`3 小时前
基于python和neo4j构建知识图谱医药问答系统
python·知识图谱·neo4j
写写闲篇儿6 小时前
Python+MongoDB高效开发组合
linux·python·mongodb
杭州杭州杭州7 小时前
Python笔记
开发语言·笔记·python
路人蛃8 小时前
通过国内扣子(Coze)搭建智能体并接入discord机器人
人工智能·python·ubuntu·ai·aigc·个人开发
qiqiqi(^_×)9 小时前
卡在“pycharm正在创建帮助程序目录”
ide·python·pycharm
Ching·9 小时前
esp32使用ESP-IDF在Linux下的升级步骤,和遇到的坑Traceback (most recent call last):,及解决
linux·python·esp32·esp_idf升级
吗喽15434518810 小时前
用python实现自动化布尔盲注
数据库·python·自动化
hbrown10 小时前
Flask+LayUI开发手记(十一):选项集合的数据库扩展类
前端·数据库·python·layui