python – 如何运行Tox与Travis-CI
|
如何在 Travis-CI以内测试 Tox的不同Python版本? 我有一个tox.ini: [tox]
envlist = py{27,33,34,35}
recreate = True
[testenv]
basepython =
py27: python2.7
py33: python3.3
py34: python3.4
py35: python3.5
deps =
-r{toxinidir}/pip-requirements.txt
-r{toxinidir}/pip-requirements-test.txt
commands = py.test
它运行我的Python单元测试在几个Python版本和工作完美. 我想在Travis-CI中设置一个构建,以便在将更改推送到Github时自动运行,所以我有一个.travis.yml: language: python python: - "2.7" - "3.3" - "3.4" - "3.5" install: - pip install tox script: - tox 这在技术上似乎是有效的,但是从Python的每个版本到Python的每一个版本,它都是冗余的.所以需要5分钟的构建需要45分钟. 我尝试从我的yaml文件中删除python列表,所以Travis只会运行一个Python实例,但是导致我的Python3.5测试失败,因为3.5解释器找不到.显然,这是一个known limitation,因为Travis-CI将不会安装Python3.5,除非您在配置中指定了确切的版本,但它并没有为其他版本. 有没有办法解决这个问题? 解决方法为此,我会考虑使用tox-travis.这是一个插件,允许使用Travis CI的多个python版本和Tox的完全可配置性.为此,您将配置.travis.yml文件以使用Python进行测试: sudo: false
language: python
python:
- "2.7"
- "3.4"
install: pip install tox-travis
script: tox
这将运行适当的testenvs,这是任何声明的env与py27或py34作为默认名称的因素.如果没有任何环境与给定因子匹配,Py27或py34将被用作回退. Further Reading (编辑:鄂州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
