温馨提示:本文翻译自stackoverflow.com,查看原文请点击:python - Running tox with different environment variable config
environment-variables python testing tox

python - 使用不同的环境变量配置运行Tox

发布于 2020-04-06 00:11:15

我想用不同的环境变量值运行测试。我有这个tox.ini,它不能满足我的要求:

# tox.ini

[tox]
envlist = py37-{foo,bar}

[testenv]
description = Tests common
setenv =
    MY_VAR=COMMON
commands =
    env

[testenv:foo]
description = Tests foo
setenv =
    MY_VAR=FOO

[testenv:bar]
description = Tests bar
setenv =
    MY_VAR=BAR 

上面ini产生了以下输出:

$ tox
GLOB sdist-make: 

***

py37-foo run-test: commands[0] | env

***

MY_VAR=COMMON                                 <<<--- MY_VAR=foo is expected

***

py37-bar run-test: commands[0] | env

***

MY_VAR=COMMON                                 <<<--- MY_VAR=bar is expected

怎么了?

我用:

  • 赢得10.0.18363 Build 18363
  • 的Python 3.7.4
  • 毒物:3.14.0

查看更多

提问者
betontalpfa
被浏览
118
betontalpfa 2020-02-01 19:37

关键是压缩依赖矩阵此技术产生紧凑且非冗余的解决方案:

[tox]
envlist = py37-{foo,bar,baz}

[testenv]
setenv =
    MY_VAR=COMMON
    foo: MY_VAR=FOO
    bar: MY_VAR=BAR
commands =
    env