6

tox用来针对不同的 Python 解释器运行测试。tox找到我的 CPython 解释器安装,因为它们位于默认位置。但是,当我为 Windows 下载 PyPy 时,它是一个存档,而不是安装程序。我应该把 PyPy / PyPy3 放在哪里以便tox自动找到它们?

4

1 回答 1

0

就像已经建议的那样,在 Windows 上执行此操作的方法是创建一个可执行批处理文件作为命令的包装器,并确保它位于PATH.

由于在 tox 文档中询问了这个问题,因此增加了一个部分来更详细地解释该问题:

tox docs解释

Windows 上的多个 Python 版本

为了在本地运行单元测试,tox.ini需要安装所有登记的 Python 版本。

一种解决方案是安装最新的 conda,然后通过 conda envs 安装所有 Python 版本。这将为每个 Python 版本创建单独的文件夹。

conda create -n python2.7 python=2.7 anaconda

要让 tox 找到它们,您需要:

  • 将主安装版本添加到系统PATH变量(例如D:\Anaconda
  • 对于其他版本,在主安装文件夹中创建一个 BAT 脚本,以将调用委托给正确的 Python 解释器 - 例如创建一个名为的文件,python2.7.bat其中包含:

@D:\Anaconda\pkgs\python-2.7.13-1\python.exe %*

这样,如果需要,您也可以直接从 cli 调用匹配的 Python 版本(类似于 UNIX 系统),例如:

 python2.7 main.py
 python3.6 main.py
于 2018-07-14T17:05:43.090 回答