How to Dynamically Change pytest#39;s tmpdir Base Directory(如何动态更改pytest的tmpdir基目录)
本文介绍了如何动态更改pytest的tmpdir基目录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
根据pytest documentation,可以覆盖默认临时目录设置,如下所示:
py.test --basetemp=/base_dir
如果随后在测试中使用tmpdir
装置.
def test_new_base_dir(tmpdir):
print str(tmpdir)
assert False
..。然后,屏幕上将打印类似以下内容的内容:
/base_dir/test_new_base_dir_0
这可以按预期工作,并且对于某些用例可能非常有用。
但是,我希望能够在每个测试(或者我应该说"每个装置")的基础上更改此设置。这样的事情可能吗?我几乎只是基于code for the original滚动我自己的tmpdir
,但我不想这样做--我希望在我能做到的现有功能之上构建,而不是复制它。
顺便说一句,我的特定用例是我正在编写一个Python模块,该模块将作用于不同类型的文件系统(NFS4等),如果能够产生tmpdir
的功能并能够创建以下装置,那就太好了:
def test_nfs3_stuff(nfs3_tmpdir):
... test NFS3 functionality
def test_nfs4_stuff(nfs4_tmpdir):
... test NFS4 functionality
推荐答案
问题中提出的问题似乎没有很好的解决方案,所以我决定对py.test
进行两次调用:
- 为每个传入不同的
--basetemp
。 - 使用
@pytest.mark.my_mark
标记哪些测试需要使用非标准基元的特殊处理。 - 向每个调用传递
-k my_mark
或-k-my_mark
。
这篇关于如何动态更改pytest的tmpdir基目录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:如何动态更改pytest的tmpdir基目录


猜你喜欢
- 使用Heroku上托管的Selenium登录Instagram时,找不到元素';用户名'; 2022-01-01
- padding='same' 转换为 PyTorch padding=# 2022-01-01
- python check_output 失败,退出状态为 1,但 Popen 适用于相同的命令 2022-01-01
- python-m http.server 443--使用SSL? 2022-01-01
- pytorch 中的自适应池是如何工作的? 2022-07-12
- 如何将一个类的函数分成多个文件? 2022-01-01
- 如何在 Python 的元组列表中对每个元组中的第一个值求和? 2022-01-01
- 如何在 python3 中将 OrderedDict 转换为常规字典 2022-01-01
- 沿轴计算直方图 2022-01-01
- 分析异常:路径不存在:dbfs:/databricks/python/lib/python3.7/site-packages/sampleFolder/data; 2022-01-01