• 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
    
    • 1

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

    pytest --start-project
    
    • 1

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

    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]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

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

  • 相关阅读:
    【Redis】常用命令介绍
    59、SpringBoot 自定义JSON的序列化器和反序列化器
    面试经典150题——Day2
    心知天气api接口怎么用?
    java.sql.SQLExceptio
    flutter与原生 相互通信实战
    iOS 17.0 YYText 崩溃处理
    JavaScript 中的事件循环是什么?
    【升级U8+】在将 varchar 值 ‘IA01‘ 转换成数据类型 int 时失败。
    【已解决】Linux清空日志文件,再写入日志内容,出现^@字符
  • 原文地址:https://blog.csdn.net/qq_27371025/article/details/134009181