我会默认使用一些参数(-n 2
)运行 pytest,但如果我只是输入 pytest ..,我不希望默认使用该参数。 .
直接运行 pytest。这可能吗?
如果我包括这个:
[pytest]
addopts=-n 2
在 tox.ini
中,然后 tox
使用该选项(根据需要),但如果我只是运行,也会使 pytest
使用该选项pytest ...
不通过 tox(不需要)。
我尝试添加 pytest.ini
,但是 tox.ini
中的默认值根本没有使用(无论是通过 tox
运行) > 或不)。
有什么帮助吗?
最佳答案
py.test 文档描述 several ways to change configuration 。一种是在 tox.ini
中添加标志,就像您已经在做的那样;另一种是使用环境变量:
You can set a
PYTEST_ADDOPTS
environment variable to add command line options while the environment is in use:export PYTEST_ADDOPTS="-v"
因此,如果您在 tox.ini
的 [tox]
block 中添加参数;例如:
[tox]
setenv=
PYTEST_ADDOPTS="-n 2"
并且不要在 [pytest]
block 中设置标志,您应该仅在使用 tox 运行 py.test 时看到应用的这些参数。
这有点不优雅,但我认为它确实有效。
(FWIW,我尝试在 tox.ini for hypothesis-python 中进行更改,并且达到了预期的效果。)
关于pytest - 为 tox 设置 pytest arg 但不直接设置 pytest,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48856608/