pytest+yaml基础练习

python有个框架叫unittest,我们曾经学过它的数据驱ddt,通过数据驱动来实现多用例测试,文章链接:Python+unittest+ddt+excel实现多用例自动化测试

鉴于unittest框架比较老,我们学习了pytest框架,文章链接:
Pytest入门学习

今天我们就在前面学习的基础上进一步加深,这期我们学习的是pytest的数据驱动,通过读取yaml文件来实现

  • 先来了解yaml的语法:
大小写敏感
使用缩进表示层级关系
缩进时不允许使用Tab键,只允许使用空格。
缩进的空格数目不重要,只要相同层级的元素左侧对齐即可
  • 再了解yaml的方法,safe_load()
safe_load是yaml一个方法,将yaml格式文件转换为python值,起解析作用

首先,安装yaml库,方法是:

pip install pyyaml

或直接在pycharm设置添加pyyaml

然后,新建一个yaml文件,给abc三个参数赋值。这里命名为test_11.yaml

#这是第一条用例数据
-
  - 1
  - 2
  - 3
#这是第二条用例数据
-
  - 2
  - 4
  - 6

接着,新建一个test.py,来执行用例

import pytest
import yaml
#读取上一步的yaml文件
file = open('test_11.yaml', 'r', encoding="utf-8")
@pytest.mark.parametrize("a, b, c", yaml.safe_load(file))
def test_add(a, b, c):
    sum = a + b
    #断言
    assert sum == c

运行下,看看结果
在这里插入图片描述
safe_load()使用例子:

import yaml
file = open('test_11.yaml', 'r', encoding="utf-8")
yy=yaml.safe_load(file)
print(yy)

结果:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

袁太太的小站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值