python">import pytest
import math
#pytest参数化
@pytest.mark.parametrize(
"base,exponent,expected",
[(2,2,4),
(2,3,8),
(1,9,1),
(0,9,0)],
ids=["case1","case2","case3","case4"]
)
def test_pow(base,exponent,expected):
assert math.pow(base,exponent) == expected
pytest本身是支持参数化的,不需要额外安装插件;
用法与unittest的参数化插件类似,通过pytest.mark.parametrize()方法设置参数;
”base,exponent,expected“用来定义参数名称。通过数组定义参数时,每一个元组都是一条测试用例使用的测试数据。ids参数默认为None,用于定义测试用例的名称;
运行结果如下: