Tox自动安装不需要的包

时间:2017-01-30 14:42:18

标签: python django travis-ci tox

我正在尝试使用TOX和Travis CI来覆盖我的测试。 不幸的是,在创建虚拟环境时,TOX从PIP安装我的软件包,因此不测试实际源代码的覆盖范围......

我怎样才能使这种情况好转。

我想最简单的解释方法是尝试:

克隆这个: https://github.com/millerf/django-channels-jsonrpc

创建一个venv

$>virtualenv venv/

最后:

$> pip install tox
$> tox -ecoverage 

覆盖范围不包括channels_jsonrpc /,因为tox在他自己的venv中安装了包...

如何阻止使用tox安装一个软件包?

1 个答案:

答案 0 :(得分:2)

Tox会在你自己的环境中安装你提供的任何软件包,它是如何工作的,使它使用你的本地仓库而不是安装远程版本,尝试将tox.ini文件的deps部分更改为:

deps =
    {toxinidir}
    coverage
    coveralls

始终确保setup.py位于{toxinidir}路径的根目录中。

您可以通过在本地更改包中的内容来测试它,然后运行tox -ecoverage并通过选中./tox/coverage/lib/python{version}/site-packages/channels_jsonrpc/

来验证安装了哪个lib tox