检测代码何时在Travis CI上运行



我有一个nose测试,它使用test目录中png文件的路径名。一条路对本地测试有效,一条路对特拉维斯有效。我如何检查代码何时在特拉维斯身上运行?

编辑:以下是实际代码

查看TRAVIS是否存在:

import os
is_travis = 'TRAVIS' in os.environ

您可以检查环境变量是否存在(或值)。看起来Travis默认定义了几个(见这里)。

例如:

import os
istravis = os.environ.get('TRAVIS') == 'true'

事后看来,以上答案都是正确的。然而,我也想记录另一个浪费我生命时间的原因。

如果您正在维护一个使用流行的tox来编排测试的代码库,那么您可能不知道这个tox行为:

默认情况下,tox将只将PATH环境变量(在windows SYSTEMROOT和PATHEXT上)从tox调用传递到测试环境。如果您想传递额外的环境变量,可以使用passenv选项:

[testenv]
passenv = TRAVIS

最新更新