例如假设我在tox.ini中关注了
[tox]
envlist = py27, py35, testenv2
[testenv]
# settings related to "default" testenv - includes deps, commands
[testenv:testenv2]
# settings related to testenv2 - includes deps, commands
现在,当我运行tox命令时,它使用python 2.7和3.5解释器调用testenv
命令,但是仅在计算机上安装了基本python的情况下调用testenv2
命令(以我的情况为2.7)。
testenv2
之类的“命名”(非默认)测试环境以进行多个python版本的测试?
答案 0 :(得分:1)
第一个答案描述了两种可行的方法。为了完整起见:您还可以生成环境并使用条件设置-例如:
[tox]
skipsdist = True
envlist = py{27,35}-{test,lint}
[testenv]
skip_install = True
deps =
test: pytest
test: pytest-xprocess
lint: flake8
lint: black
commands =
test: pytest -v
lint: flake8
lint: black .
将生成(tox -a
):
py27-test
py27-lint
py35-test
py35-lint
您可以使用任何因素(例如py27或测试)有条件地添加命令,部门等。
另请参阅docs。
顺便说一句:要查看每个testenv到底具有哪些设置,可以运行tox --showconfig
。
答案 1 :(得分:0)
明确列出所有环境:
<TextBox.InputBindings>
<MouseBinding Gesture="LeftClick"
Command="{Binding TextBoxSelected, Source={StaticResource vm}}"
CommandParameter="{Binding DataContext, RelativeSource={RelativeSource Mode=Self}}"/>
</TextBox.InputBindings>
如果重构[tox]
envlist = py27, py35, py27-testenv2, py35-testenv2
还不够:
tox.ini
答案 2 :(得分:0)
我可以通过创建多个“命名”测试环境来获得要使用多个python版本进行测试的“命名”测试环境,每个测试环境分别代表我希望使用它进行测试并使用defmodule M do
@steps [0,1,2,3,-4,5,6,-1]
def sum(list, acc \\ 0)
def sum([], acc), do: acc
def sum([h|_], acc) when not is_number(h), do: :error
def sum([h|_], acc) when h < 0, do: acc
def sum([h|t], acc), do: sum(t, acc + h)
def sum_steps(), do: sum(@steps)
end
M.sum_steps()
#⇒ 6
的不同python版本。选项,指定要用于测试的测试环境的python版本。下面是有效的示例:
basepython