[英]Is pytest tmpdir only associated with function parameters?
有没有办法使用 pytest fixture tmrdir 编写类的测试方法? 在文档中,它指定它可以与函数一起使用。 https://docs.pytest.org/en/latest/tmpdir.html
如果有一种方法可以为类中的测试方法传递 tmpdir 参数,您能否分享一个示例?
我尝试了以下操作,但出现错误,例如:“
test_method() 正好需要 2 个参数(给定 1 个)”
我的代码:
import pytest
class class_test(TestCase):
def test_method(self,tmpdir):
# code
请帮忙。
如此处的文档中所述,您必须在initdir函数上添加tmpdir参数。 这样initdir夹具函数将用于类的所有方法
例子:
import unittest
import pytest
class Test_Temp(unittest.TestCase):
@pytest.fixture(autouse=True)
def initdir(self, tmpdir):
tmpdir.chdir() # change to pytest-provided temporary directory
tmpdir.join("samplefile.ini").write("# testdata")
def test_file content(self):
with open('samplefile.ini', 'r') as f:
assert f.read() == '# testdata' //True
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.