现在我们编写的函数和测试用例是1对1的关系,也就是说,当你想测试某个功能场景的时候,你必须要去编写一个对应的测试函数。当测试的场景越来越多,测试数据越来越复杂的情况下,需要编写更多的测心率函数,而这些函数的逻辑基本上是重复的。
那么这个时候,我们就需要用到ddt 数据驱动测试
ddt是 Data-Driven testing的简写
ddt的作用就是保证数据和测试逻辑分离,使测使用例具有独立性。
在 pytest 当中可以使用参数化这种测试手段,简化编写用例函数的过程。我们并不需要为每一组测试数据单独去编写一个测试函数,而是采取多种数据共用一个函数的方式。如果测试操作几乎一致,可以重复使用这一个函数进行测试。
例如:
import pytest
cases = [
(1, 2, 3),
("hello", "world", "hello world"),
(1, "world", "1world")
]
@pytest.mark.parametrize("