1

运行 py.test 创建临时存储库来帮助我们保存报告、数据、输出等

它们可以在DRIVE:\Users\USERNAME\AppData\Local\Temp\pytest-of-USERNAME\

如第 72 页文档中所述:

临时目录默认创建为系统临时目录的子目录。基本名称将是 pytest-NUM,其中 NUM 将随着每次测试运行而递增。此外,超过 3 个临时目录的条目将被删除。

当我运行多个测试时,最多 3 个临时目录非常烦人,有没有办法改变这个值?

4

1 回答 1

0

由于这些是临时目录,您不能依赖它们留下来。这个名字说明了一切。在 Unix 上运行 py.test,tmp 目录实际上存储在 /tmp 目录中,每次系统重新启动时都会清空该目录。

相反,您应该将您的内容移动到安全的地方。这可以通过使用 yield 固定装置创建一个临时目录来完成,然后在拆卸阶段将目录的内容复制到一个安全的地方。

@pytest.yield_fixture(scope="session")
def my_tmp_dir(tmpdir_factory):
   t = tmpdir_factory.mktemp('some_test_path')
   yield t
   # do things to copy away your tmp directory
   # to a safe place. 
于 2016-06-30T10:43:11.870 回答