我有一个带有pytest套件的Python 3项目,并希望在Travis上运行它 .

我正在尝试编写一个可以在开发人员机器和Travis CI上运行的 test.sh 脚本,它必须设置virtualenv,安装软件包,运行pytest然后销毁virtualenv . 我可以't use Tox because it doesn'跟随我们正在使用的依赖链接 .

脚本(简化)是:

python3 -m venv .venv
pip install -e . --process-dependency-links --allow-all-external
.venv/bin/pip install pytest
.venv/bin/pytest
rm -rf .venv

在我的机器上它可以工作,但在Travis上失败了,因为在 .venv/bin 内部没有 pip 可执行文件,也没有 pip2pip3 .

我试图用 .venv/bin/python3 -m pip install --upgrade pip 强制安装它,但仍然没有二进制文件 .

运行 python3 -m venv --help 我看到有一个可选的标志 --without-pip 可用,相同的帮助文本说 pip is bootstrapped by default . 我怎样才能确保virtualenv中存在pip?