python-web自动化-pytest参数化(ddt思想)-打标签

it2026-08-22  1

在写用例方面,在用例前面加上@pytest.mark.parametrize(“参数名”,[list数据]) 参数名:用来接收每一项数据,并作为测试用例的参数 列表数据:一组测试数据。

import pytest @pytest.mark.parametrize("a", [(1, 3), (10, 35), (22.22, 22.44)]) def test_add(a): print(a) list_1 = [(1, 3), (10, 35), (22.22, 22.44)] @pytest.mark.parametrize("a,b,c", list_1) def test_add2(a,b,c): # 参数要保持一致 参数和列表里的也要保持一致 print(a,b,c)

组合化参数:多组参数,一次组合 使用多个@pytest.mark.parametrize即可。 例如:

list_1 = [1,2] list_2 = [1,2] @pytest.mark.parametrize("x", list_1) @pytest.mark.parametrize("y", list_2) def test_add(x, y): z = x * y print(z)

打标记:mark功能 对用例进行打标签,也就是说,写了100个用例,在30个用例上打标签,在执行的时候,只执行这30个标签。 A、得先注册标记名 pytest.ini 文件名称 [pytest] 固定用法 markers= 标签名:说明(只能是英文) 固定用法 标签名 标签名 B、给测试用例/测试类打标记 @pytest.mark.已注册的标记名

C、运行时设置只运行标记的用例 pytest命令行:-m 标记名 在收集到的所有用例当中,只运行有标记名的用例。 有问题,欢迎指出。

最新回复(0)