是的,可以在一个测试中使用@pytest.mark.parametrize
多次。@pytest.mark.parametrize
是pytest框架中用于参数化测试的装饰器。通过使用该装饰器,可以在一个测试函数中多次运行相同的测试用例,但使用不同的参数组合。
下面是一个示例,演示了如何在一个测试中多次使用@pytest.mark.parametrize
:
import pytest
@pytest.mark.parametrize("input, expected", [
(1, 2),
(3, 6),
(5, 10)
])
def test_multiply_by_two(input, expected):
result = input * 2
assert result == expected
在上面的示例中,test_multiply_by_two
函数被@pytest.mark.parametrize
装饰器修饰,并传入两个参数:input
和expected
。每个参数都是一个列表,包含了多组参数。
当运行这个测试时,pytest会自动根据参数组合的个数执行多次相同的测试用例。上述示例中,test_multiply_by_two
将会执行三次,分别使用(1, 2)
、(3, 6)
和(5, 10)
这三组参数进行测试。
希望对你有帮助!如果需要了解更多关于pytest的用法和实践,可以查看腾讯云的相关产品和文档:腾讯云·pytest。
领取专属 10元无门槛券
手把手带您无忧上云