前言
我们在实际自动化测试中,某些测试用例是无法通过一组测试数据来达到验证效果的,所以需要通过参数化来传递多组数据
在unittest中,我们可以使用第三方库parameterized来对数据进行参数化,从而实现数据驱动测试
而在pytest中,也提供了功能强大的@pytest.mark.parametrize装饰器来实现数据参数化
Pytest参数化的方式
pytest有三种传参方式
@pytest.mark.parametrize()
通过装饰器方式进行参数化(最常使用)pytest.fixture()
方式进行参数化,fixture
装饰的函数可以作为参数传入其他函数conftest.py
文件中存放参数化函数,可作用于模块内的所有测试用例
@pytest.mark.parametrize实现参数化
装饰测试类
当装饰器 @pytest.mark.parametrize 装饰测试类时,会将数据集合传递给类的所有测试用例方法
举个