【发布时间】:2018-03-29 11:47:44
【问题描述】:
在我的 CI 中,我有一个 build 步骤,它使用 pip 并使用私有索引等正确设置。
然后我有 test 步骤,它执行python setup.py test。
在这种特殊情况下,test 是 pytest 的别名。
Setuptools 和 PIP 以不同的方式解决包依赖关系,这导致 test 步骤尝试重新安装某些包。我想防止这种情况发生。有没有办法通过 Setuptools 配置(首选)或 PyTest 配置来做到这一点?
更新:
通过大众需求回购来举例说明我遇到的问题 https://github.com/vartec/example_repo_setuptools_issue
【问题讨论】:
-
有什么令人信服的理由不只是运行
pytest命令目录而不是使用 setup.py? -
@MrName 原因是
python setup.py test应该无论使用哪个特定的测试运行程序包都可以工作,无论是 vanilla unittest、pytest 还是像鼻子测试这样过时的东西。 -
如果已经预装了pytest,setuptools会重新安装吗?我以为我有这个问题,通过将测试框架预装到virtualenv中解决了。
-
你能提供一个我们可以使用的最小可重现示例 git repo 吗?
-
@TarunLalwani 完成
标签: python pytest setuptools