首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

pytest数据驱动-pytest.mark.parametrize

pytest.mark.parametrizepytest 的内置装饰器,它允许在 function 或者 class 上定义多组参数和 fixture来实现数据驱动。...@pytest.mark.parametrize() 装饰器接收两个参数:第一个参数以字符串的形式存在,表示被被测试函数接受的参数,假如被测试函数有多个参数,则以逗号分开。第二个参数用于保存测试数据。...pytest.mark.parametrize单参数 ? 运行结果 ? 以上是单参数的一个例子,在这个例子中,test_equal函数接收一个参数 num,这个参数有三条数据,分别是1,2,3 。...pytest.mark.parametrize多参数 通常在工作中进行测试的参数不止一个,多参数还是比较常见的,因为不仅仅包括用于测试的数据, 还包括用于验证的数据。 示例1 ? 运行结果 ?...以上是对功能函数sum_of_two(num1,num2)两数之和(功能函数两个入参)的简单验证,包含三条测试用例和预期结果 总结pytest 进行数据驱动的基本思路 pytest可以通过 pytest.mark.parametrize

2.2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Python Pytest装饰器@pytest.mark.parametrize详解

    Pytest中装饰器@pytest.mark.parametrize('参数名',list)可以实现测试用例参数化,类似DDT 如:@pytest.mark.parametrize('请求方式,接口地址...list的每个元素都是一个元组,元组里的每个元素和按参数顺序一一对应 3、传一个参数 @pytest.mark.parametrize('参数名',list) 进行参数化 4、传两个参数@pytest.mark.parametrize...('参数名1,参数名2',[(参数1_data[0], 参数2_data[0]),(参数1_data[1], 参数2_data[1])]) 进行参数化 import pytest #单参数单值 @pytest.mark.parametrize...==== 1 passed in 0.15s ============================== Process finished with exit code 0 #单参数多值 @pytest.mark.parametrize...("x", [0, 1]) @pytest.mark.parametrize("y", [2, 3]) def test_foo(x, y): print("测试数据组合:x->%s, y->%

    8K12

    简单了解pytest测试框架setup和tearDown

    pytestsetup与teardown 1)pytest提供了两套互相独立的setup 与 teardown和一对相对自由的setup与teardown 2)模块级与函数级   模块级(setup_module...方法级(setup_method/teardown_method)  #开始于方法始末(在类中)   类级(setup_class/teardown_class)     #只在类中前后运行一次(在类中...) 3)类里面的(setup/teardown)           #运行在调用方法的前后 setup与teardown例子 import pytest # 模块中的方法 def setup_module...(): print("teardown_function:每个用例结束后都会执行") # 测试模块中的用例1 def test_one(): print("正在执行测试模块----test_one"...正在执行测试类----test_three") def test_four(self): print("正在执行测试类----test_four") if __name__ == "__main__": pytest.main

    79320
    领券