专栏首页Mokwingpytest 测试框架学习(10):pytest.param

pytest 测试框架学习(10):pytest.param

pytest.param

含义

param: 在 pytest.mark.parametrize 中可以作为一个指定的参数进行调用。 源码:

values: 需要传入的参数,按照顺序。 **kw: 传入为字典,主要有两个:marks 和 id。 marks: 要应用于此参数集的单个标记或标记列表。 id: 这个参数集中的id属性。

使用

import pytest

@pytest.mark.parametrize("test_input, expected", [
        ("3+5", 8),
        pytest.param("6*9", 42, marks=pytest.mark.xfail),
    ])
def test_eval(test_input, expected):
        assert eval(test_input) == expected

执行结果:

上面我们将第2个参数传入的值标记为 xfail ,执行结果就是一个执行通过,一个忽略。

id 使用:

import pytest

@pytest.mark.parametrize("test_input, expected", [
        ("3+5", 8),
        pytest.param("6*9", 54, marks=pytest.mark.xfail, id="this case -- xfail"),
    ])
def test_eval(test_input, expected):
        assert eval(test_input) == expected

id 就是重新给该条测试参数化内容 重新命名打印出来。

说明:本篇参考官网并加入自己些许理解翻译而来,觉得有用,可以点赞和赞赏哦(^ v ^),谢谢支持;如果有不足地方,可留言评论。后续将继续更新。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • pytest 测试框架学习(1):初识

    3.3. 在输入框中输入 pytest 后,点击下方 Install Package,安装成功会弹出 install successfully 的提示信息。...

    Mokwing
  • pytest 测试框架学习(8):pytest.exit

    msg: 就是我们退出测试进程时显示的信息。 returncode: 当退出pytest时返回的一个状态码,为 int 类型。

    Mokwing
  • pytest 测试框架学习(15):pytest.freeze_includes

    freeze_includes: 返回包括 cx_freeze 提供的 pytest 使用的模块名称列表。 源码:

    Mokwing
  • pytest文档9-参数化parametrize

    这将运行测试,参数设置为x=0/y=2,x=1/y=2,x=0/y=3,x=1/y=3组合参数。

    上海-悠悠
  • 【MySQL (五) | 五分钟搞清楚 MVCC 机制】

    对事务隔离级别不熟悉的同学可以参考文章 【MySQL (三) | 五分钟搞清楚MySQL事务隔离级别】

    周三不加班
  • 如何为crontab调度运行的多脚本设置共享的环境变量?

    直接将环境变量添加到crontab中,如: NAME=zhangsan AGE=30 10 * * * * /home/xx/test.sh ...

    一见
  • 函数声明提升与变量提升

    1.当在函数的作用域里定义一个和外部变量一样的名称的变量时,变量声明会提升至第一句,但是赋值则不变

    Ewall
  • YII2框架中ActiveDataProvider与GridView的配合使用操作示例

    本文实例讲述了YII2框架中ActiveDataProvider与GridView的配合使用操作。分享给大家供大家参考,具体如下:

    砸漏
  • USACO的注册和使用

    2 在登录栏上面有“Register here for ausername/password”这一行,点击进去

    海天一树
  • SQL 获取定长连续子序列

    savior 表有两个字段,id 是主键,设置了自动递增;status 表示状态,它只有 0/1 两种状态。

    白日梦想家

扫码关注云+社区

领取腾讯云代金券