1
我在参数化测试中无法访问灯具(本例中为capsys)。目前我使用的是虚拟夹具,使这项工作:从参数化测试中访问灯具(例如,capsys)
import pytest
@pytest.fixture
def params(request):
from collections import namedtuple
return namedtuple('Params', 'input output')(*request.param)
@pytest.mark.parametrize('params', [
('a', '1a\n'),
('b', '1b\n'),
], indirect=True)
def test_output(capsys, params):
print('1' + params.input)
out, err = capsys.readouterr()
assert out == params.output
有没有办法改写这个代码不params
灯具?
嗯,这是令人尴尬......当我试图为了让这个工作,我确定我看到错误的数量传递给测试的错误,但显然这个例子工作正常。谢谢! –