问题标签 [tox]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python/tox,在测试前启动一个进程,完成后关闭它
我正在使用Tox检查我正在开发的系统在安装在新环境中时是否运行良好(+ 完整性检查setup.py
文件)。但是,系统使用memcached
服务器,理想情况下,我希望每次Tox
运行都生成一个新服务器。
在运行测试之前启动程序(然后关闭它们)是否有首选方法,或者我需要编写自定义运行程序?
编辑:测试运行器是py.test
python - 如何说服 python tox 只为可用的 python 解释器运行测试?
我正在使用 python tox为多个版本的 python 运行 python unittest,但是这些 python 解释器并非在我运行 tox 的所有机器或平台上都可用。
如何配置 tox 使其仅在 python 解释器可用时运行测试。
示例tox.ini
:
最大的问题是我确实想要一个自动检测的 python 环境列表。
coverage.py - 如何配置 tox 以便它将在单个环境而不是全部环境上运行 pytest 覆盖?
我确实有一个复杂的 tox.ini 配置,其中包含不同版本的 python 的多个环境。
我想知道如何告诉 tox 只在默认的 python 解释器上运行覆盖。
问题之一是默认的 Python 环境可能因平台而异。
我确实有一个包装脚本,它调用tox -e py25,py26,docs
其中 -e 参数是检测到的 python 版本。
期望的行为:运行 pytest 覆盖单个环境(这应该与 jenkins 集成运行)。
python - 使用 tox 在 windows 上设置多个 python 安装
我正在尝试在 Windows 上设置tox以针对多个 python 安装运行测试。我已经将每个 python 安装在名为 的文件夹中C:\Python\PythonXX_YY
,XX
它是 python 版本(例如 27)并且YY
是 32 或 64。目前,我的 PATH 中唯一的 python 是C:\Python\Python33_64
,因为我使用新的 python 启动器来运行我想要的任何版本。我也在从这个版本运行 tox。
第一个问题是 tox 没有检测到这些安装,大概是因为它们不在默认位置。我可以通过在 tox.ini 中为每个环境设置路径来解决这个问题,但它使设置非常适合我的计算机。有没有更好的方法让 tox 知道我的蟒蛇在全球范围内的位置?
第二个问题是,在 tox.ini 中设置 python 位置,当我运行它时出现以下错误(对于 Python27):
看起来它试图从 Python3.3 安装 Python2.7 的东西,但我以前从未真正使用过 virtualenv,所以我可能会误解这个错误。
我不确定解决方案是什么,但在我看来,显而易见的解决方案应该是让 tox 使用 python 启动器来获取它需要的 python 版本。有没有办法让它做到这一点?
python - 在 tox.ini 中指定 hg 依赖项
在 .hg 中指定 hg 依赖项的正确方法是什么tox.ini
?例如
不幸的是,这不起作用,并且喷出以下内容:
最后一行pip.log
是:
但是运行pip install hg+https://code.google.com/p/python-progressbar/
有效。
tox 测试环境以 Python 3.3 为目标。
python - 如何防止tox删除已安装的包?
我正在 Windows 上使用 tox 为依赖于 numpy 和 scipy 的包运行测试。
由于 pip 不知道如何安装二进制文件,所以我手动安装了 numpy 和 scipy 的二进制文件。在测试运行期间,tox 卸载了 numpy 和 scipy,当然会因为找不到依赖关系而立即中断。
这发生在带有旧版本 numpy 和 scipy(用于测试向后兼容性)的 python 2.5 上。
我的 tox 版本(在我用来运行 tox 的 python 2.6 中)是 tox-1.4.2 我的 2.5 环境中的 pip 版本是 pip-1.2.1。
大约 2 年前,当我设置我的毒物测试时,这并没有发生。
问题:有没有办法防止 tox 卸载 numpy 和 scipy?
额外的问题:是否有替代 tox/pip 在 Windows 上运行更好并且知道如何安装二进制文件的替代方法?
python - Python tox 错误“插件已注册”
我正在尝试为我在绝地自动完成库上所做的一些工作运行带有 tox 的测试套件,并且得到以下结果:
完整输出可在此处获得:
https://gist.github.com/Astrac/5abdba7db62ac204325e
这是 pytestdebug.log:
https://gist.github.com/Astrac/b5728dfeb22c0d2fb0f5
我尝试在我的主环境中使用 pip 运行 tox,并在干净的虚拟环境中运行它,获得相同的结果。我还尝试直接运行 py.test(从我的主环境和虚拟环境中),但结果是一样的。
另一方面,我知道它可以工作,因为我可以看到它在 travis 上运行:
https://travis-ci.org/davidhalter/jedi/jobs/5765531
任何帮助将不胜感激,谢谢!
python - 在持续集成解决方案中使用 python tox 而不以 root 身份安装 tox?
我确实喜欢独立的解决方案,并且能够运行单元测试而无需在机器上安装任何东西。
这将允许我在几台机器上测试 python 包,而无需为此做准备。
是否有可能(如何?)使用 tox 运行 python unittests 而无需将其安装到机器上(因此 root 访问)。
nose - 解决python中运行unittest的方式太多产生的困惑
我正在尝试实现一种完整而干净的测试 python 包的方法,一种适合以下要求的方法:
- 在干净的机器上执行测试而不设置它们(virtualenv)
- 从多个平台收集结果
- 从多个 python 解释器收集结果
- 代码覆盖率(将多次执行的结果合并到一个报告中)
- 能够生成 xml 代码覆盖率报告,以便构建系统可以跟踪这种变化随时间的变化。
- 能够启用基于平台的禁用测试
- 在测试之前运行几个命令,例如 pep8 或 autopep8
- 并行运行测试。
我用了几种方法:nose + pytest
,tox + pytest
但最近发现pytest
应该可以做大部分的东西。
主要问题是我无法找到关于何时使用一种或另一种方法更好的明确比较。
有人可以解释这些并给出这些配置的一些用例或限制吗?...只是为了清楚说明您何时采用一种或另一种方法。
最后,我确实想要这些选项:
quicktest
- 在本地运行测试,每次提交前必须这样做fulltest
- 完整的测试,在所有可用平台上运行它们,这是发布新版本之前的必备条件
python - 如何告诉 tox 使用 PyPI 镜像安装包?
有没有办法告诉tox
测试自动化工具在安装所有包时使用 PyPI 镜像(显式测试依赖项tox.ini
和来自的依赖项setup.py
)?
例如,pip install
有一个非常有用的--use-mirrors
选项,可以将镜像添加到包服务器列表中。