有没有一种方法可以使用pytest夹具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
请帮助。
答案 0 :(得分:1)
如文档here中所述,您必须在 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