使用 tox 安装可选依赖项

Install optional dependencies with tox

我使用 tox 来测试具有以下基本配置 (tox.ini) 的 python 项目:

[tox]
envlist = py3
isolated_build = True

[testenv]
deps =
    pytest
    pytest-cov
commands =
    pytest --cov {envsitepackagesdir}/foobar --cov-report xml --cov-report term

不幸的是,软件包的可选依赖项(如 setup.cfg 中指定)未安装;原始点中的相应行将是

pip install .[all]

如何让 tox 安装所有可选依赖项?

您可以将 testenv 的依赖项更改为

[testenv]
deps = 
    .[all]
    pytest
    pytest-cov

模拟pip install .[all]

的行为

支持的方法是在您的 testenv

中使用 extras

例如:

[testenv]
deps = -rrequirements-dev.txt
extras = typed

这将安装 .[typed]-e .[typed] 如果 usedevelop = true


免责声明:我是毒物维护者之一