为pyx设置pytest arg但不直接pytest

时间:2018-02-18 21:10:31

标签: pytest tox

我默认使用一些参数(-n 2)来运行pytest但是我不希望默认情况下使用该参数如果只输入pytest ...来运行直接pytest。这可能吗?

如果我包括这个:

[pytest]
addopts=-n 2
tox.ini

,然后tox使用该选项(根据需要),但如果我只是通过tox运行pytest,则pytest ...会使用该选项(不需要) )。

我尝试添加pytest.ini,但是tox.ini中的默认设置根本没有使用(无论是否通过tox运行)。

任何帮助?

1 个答案:

答案 0 :(得分:2)

py.test文档描述several ways to change configuration。一种是在tox.ini中添加标记,就像你已经在做的那样;另一种是使用环境变量:

  

您可以设置PYTEST_ADDOPTS环境变量,以便在使用环境时添加命令行选项:

export PYTEST_ADDOPTS="-v"

因此,如果您在[tox]的{​​{1}}块中添加参数;例如:

tox.ini

并且不在[tox] setenv= PYTEST_ADDOPTS="-n 2" 块中设置标志,只应该在运行带有tox的py.test时看到应用的那些参数。

它有点不优雅,但我认为它可以解决问题。

(而且FWIW,我已尝试在tox.ini for hypothesis-python中进行更改,并且具有预期的效果。)