2012-11-13 59 views
9

我正在使用python tox为python的几个版本运行python unittest,但是这些python解释器并非在所有运行tox的机器或平台上都可用。如何说服python tox只为可用的python解释器运行测试?

如何配置tox,以便只有在python解释器可用时才会运行测试。

tox.ini例子:

[tox] 
envlist=py25,py27 

[testenv] 
... 
[testenv:py25] 
... 

最大的问题是,我不希望有蟒蛇环境的列表是自动检测。

+0

不是已经这样做了吗?我记得这是检测到缺少解释器并跳过相关测试(相当快)。 – delnan

回答

11

从Tox版本1.7.2开始,您可以通过--skip-missing-interpreters标志来实现此行为。您还可以在tox.ini文件中设置skip_missing_interpreters=true。更多信息here

[tox] 
envlist = 
    py24, py25, py26, py27, py30, py31, py32, py33, py34, jython, pypy, pypy3 
skip_missing_interpreters = 
    true 
-2

如果无法找到解释程序,tox将显示错误。如果应该有一个“SKIPPED”状态并使tox返回“0”成功结果,问题就会出现。这应该可以通过命令行选项明确启用。如果您同意,请在http://bitbucket.org/hpk42/tox处提交问题。

+1

我添加了一个功能请求https://bitbucket.org/hpk42/tox/issue/59/allow-tox-to-ignore-missing-python Tx – sorin

+0

你可以推荐SO用于大多数tox/pytest相关的问题 - 作为主要支持选项。它比任何邮件列表好得多。尽管如此,邮件列表还是有用的。 – sorin

+1

我想我已经推荐它了,至少pytest。唯一需要注意的是3年前好的答案现在可能不再是好的/有效的。 – hpk42

相关问题