首页 > 其他分享 >pytest.mark.parametrize 传参

pytest.mark.parametrize 传参

时间:2024-06-19 16:03:03浏览次数:18  
标签:传参 input2 parametrize input1 mark pytest 参数 expected

pytest.mark.parametrize 是pytest用来参数化测试的一个装饰器,它允许你为测试函数或测试类提供多组参数list, 这样就可以使用每组参数执行测试函数或测试类,实现参数化驱动,接收的是元组集

1.pytest.mark.parametrize 可接收三个参数,常用的有两个,第一个是函数中需要引用的参数名,第二个是参数值,会自动解析参数值并赋值到参数名上,按顺序将最小的迭代单元赋值到参数上

   参数名:传字符串类型,字符串中可以定义一个或者多个参数名,用逗号分隔开

   参数值:可迭代的对象,比如列表、元组、集合等等, 注意:参数值可以使用变量,但是不能传装饰器

 

 

示例1:

test_datas =[

{"input1": 1, "input2": 2, "expected": 3},
{"input1": 2, "input2": 3, "expected": 5},
{"input1": 3, "input2": 4, "expected": 7}
]

@pytest.mark.parametrize("data", test_datas)
data = {"input1": 1, "input2": 2, "expected": 3}
data = {"input1": 2, "input2": 3, "expected": 5}
data = {"input1": 3, "input2": 4, "expected": 7}


示例2:

test_datas =[(1, 2, 3), (2, 3, 4), (3, 4, 5)]

@pytest.mark.parametrize("data01, data02, data03", test_datas)
data01=1, data02=2, data03=3
data01=2, data02=3, data03=4
data01=3, data02=4, data03=5

还有一个参数是ids

   ids:这个是可选参数,标记每一组数据,在测试输出中展示,如图

 

标签:传参,input2,parametrize,input1,mark,pytest,参数,expected
From: https://www.cnblogs.com/hqsbrx/p/18255937

相关文章

  • nuxt 基本路由+动态传参
    一、基本路由nuxt3的文件结构实际文件结构app.vue中建立pages文件路由目录在下方创建xxx.vue文件作为父组件文件,在创建一个与它同名的文件夹。存储子组件2.动态传参......
  • Pytest框架中fixture功能详解
    文章目录1定义Fixture函数2Fixture的函数参数2.1传入其他fixture函数作为参数2.2传入request对象参数示例1:访问fixture的调用者示例2:使用fixture的参数3Fixture的作用域参数scope3.1scope=class场景3.2scope=session场景4Fixture的自动使用参数autouse=......
  • Python自动化测试框架-pytest
    源码:https://github.com/pytest-dev/pytest文档:https://docs.pytest.org/en/8.2.x/安装:pipinstallpytest简单样例#contentoftest_sample.pydefinc(x):returnx+1deftest_answer():assertinc(3)==5命令行执行python可以看到执行结果命名规范......
  • pytest + yaml 框架 -61.jenkins+allure+钉钉通知添加测试结果
    前言上一篇pytest+yaml框架-60.git+jenkins+allure+钉钉通知反馈已经实现测试结果用钉钉通知。本篇继续在钉钉通知里添加测试的汇总结果,此功能在pytest-yaml-yoyov1.5.2版本上实现。EnvironmentInjector插件在运行完用例后会生成一个summary.json文件,汇总测试......
  • pytest接口自动化测试框架:为什么要做pytest插件的二次开发
    pytest二次开发的主要场景举例  https://blog.51cto.com/u_16213617/9796200 在进行接口自动化测试时,pytest框架提供了一套丰富的功能和插件,可以帮助我们快速编写和执行测试用例。然而,有时我们可能会遇到一些框架本身无法满足的特殊需求。这时,就需要进行pytest插件的二次开......
  • pytest的数据驱动和参数传递
    4.1参数化介绍常见使用场景:简单注册功能,也就是输入用户名、输入密码、单击注册,而测试数据会有很多个,可以通过测试用例设计技术组织出很多测试数据,例如用户名都是字母,密码也都是字母,或者都是数字,也可是它们的组合,或是边界值长度的测试数据等。这时可以通过参数化技术实现测试数据......
  • nuxt框架中路由动态传参及结构分析之文章跳转详情页面传递文章id
    在nuxt里面我们会经常使用到路由传递参数,列如,登录,文章跳转详情页面等,下面我就以文章列表跳转文章详情页面记录一下。1、首先这个是我的目录结构:在文章列表页面:list.vue(layout目录下的这里其实是一个组件)里面我写了这样一段实现跳转传递,这里我使用到了<nuxt-link>(当然你有其他......
  • Python+pytest+jenkins 多插件 pdf电子书目录
    第1章pytest入门11.1资源获取 41.2运行Pytest 51.3运行单个测试用例 101.4使用命令行选项 10--collect-only选项 11-k选项 11-m选项 12-x选项 13--maxfail=num 15-s与--capture=method 16-lf(--lastfailed)选项 16--ff(--failed-first)选项 17......
  • Selenium4 + chrome + pytest
    浏览器options配置及常用的操作方法:fromselenium.webdriver.chrome.optionsimportOptionsoptions=Options()#创建配置对象options.add_argument('lang=zh_CN.UTF-8')#设置中文options.add_argument('--headless=new')#无头参数,浏览器隐藏在后台运行options.add_......
  • React Hooks路由传参
    场景:如何把想要的参数带到跳转过去的页面里呢?很简单上代码:在你需要跳转的页面上引入Link用来跳转使用Link跳转并携带参数然后需要什么参数就带什么过去喽 这里record里面存的就是我的数据我只需要id和state然后到你跳转过去的页面(也就是需要使用这个页面的这俩参数的页......