pytest结合yaml实现数据驱动

一、yaml的使用说明

#定义yaml,读取操作

https://www.cnblogs.com/zwx901323/p/16541786.html

二、pytest框架数据驱动方式说明

复制代码
import pytest

class Testfirst:
    @pytest.mark.parametrize("caseinfo", [1,2,3]) #方式一:单个值
    def test_main1(self,  caseinfo):
        print(f"测试主程序1:{caseinfo}") #源于yield传参信息

    @pytest.mark.parametrize("name, age", [["tom","22"],["jerry", "33"]])
    def test_main2(self, name, age):   #方式二:多个值
        print(f"测试程序2:{name}+{age}" ) #传参使用

if __name__ == '__main__':
    pytest.main()
复制代码

三、框架搭建

 

复制代码
#文件一:new.yaml
-
  name: 获取接口的token鉴权码
  request:
    method: get
    url: https://www.baidu.com
    headers: none
    params:
      type: client_credential
      appid: id
      secret: 88888888
  validate_assert_data: none

#文件二:读取操作
def read_yaml():
    with open("new.yaml", "r+", encoding="utf-8") as f:
        data = yaml.safe_load(stream=f)
        return data
if __name__ == '__main__':
    read_yaml()
"""
[{'name': '获取接口的token鉴权码', 'request': {'method': 'get', 'url': 'https://www.baidu.com', 'headers': 'none', 'params': {'type': 'client_credential', 'appid': 'id', 'secret': 88888888}}, 'validate_assert_data': 'none'}]
"""
复制代码

 

posted @   zwx901323  阅读(253)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示