"); //-->
本文分享自天翼云开发者社区《浅谈Tox之一》,作者:Moonriver
What is tox?
tox是通用的virtualenv管理和测试命令行工具,可用于:
使用不同的Python版本和解释器检查您的软件包是否正确安装
在每个环境中运行测试,配置您选择的测试工具
充当持续集成服务器的前端,大大减少了样板文件并合并了CI和基于shell的测试。
Basic example
首先,使用pip install tox安装tox。 然后将项目以及测试环境的基本信息放入位于setup.py文件旁边的tox.ini文件中:

只需输入:tox,如上图tox.ini文件所示,即可对当前项目进行sdist打包,创建两个Python2.7和Python3.6的virtualenv环境,将sdist软件包安装到环境中,并在每个环境中进行测试。
System overview
tox大致分为以下几个阶段:
1. 配置
2. 包装(可选)
3. 环境
4. 报告
配置->打包(可选)->环境->报告
1. 配置
加载tox.ini并将其与命令行和操作系统环境变量中的选项合并。
2. 打包(可选)
通过调用python setup.py sdist创建当前项目的源代码库。
3. 环境
对于每个Tox环境执行以下操作:
环境创建——默认情况下使用virtualenv创建一个新的环境。 tox会使用环境名称(例如表示Python 2.7的py27和basepython配置值)和当前的操作系统PATH值来自动尝试查找有效的Python解释器版本。
install(可选)——安装deps配置部分中指定的环境依赖项,然后安装较早打包的源代码。 commands——以指定的顺序运行指定的命令。
4. 报告——打印出每种tox环境的结果报告:
____________________ summary ____________________
py27: commands succeeded
ERROR: py36: commands failed
只有所有环境都成功运行了,tox才会返回退出代码0(成功)。
tox将为您解决环境隔离问题:它将删除未通过passenv指定的所有操作系统环境变量。 此外,它还将更改PATH变量,以便您的命令在当前活动的Tox环境中首先解析。 通常,路径中的所有可执行文件都可以在命令中使用,但是如果没有通过whitelist_externals明确允许,tox将发出警告。
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
面向军工的自动化测试,维护与诊断
你应该知道的自动化测试的“ABC”
LabVIEW 8.6 评估版软件 (针对自动化测试应用)
e络盟携手Emerson推出全新高性价比NI PXI系统,丰富自动化测试产品组合
基于LabWindows CVI的通信电源系统自动化测试的实现
别再只盯着光刻机了!自动化测试对于芯片制造同样重要
无刷电机角度标定以及Cogging测试方案
龙年启程,NI发布LabVIEW+套件
基于串口通信开发的BLE芯片测试平台
自动化测试解决之道――构建以软件为核心的模块化系统
具可配置数字滤波器的 32 位过采样 ADC
NIDays 2012讲座资料包之自动化测试与测量专题
分享一份电子元器件自动化测试系统的资料
NIDays2010 专题演讲 专题二 自动化测试
电机自动化测试系统相比传统测试优势在哪里?
电容的传统测试会给测试员带来何种苦恼——第一弹
为推进汽车的电气化,马自达使用软件定义的自动化测试系统,还成功降低了90%的测试成本
HTTP接口自动化测试方法研究
基于LabVIEW的汽车门把手传感器测试系统
是德科技委外研究表明,自动化测试仍然是当今组织面临的重大挑战
SEMICON 2025 | NI 6大半导体测试方案全解析
是德科技推出AI驱动的自动化测试,优化5G智能手机用户体验
e络盟携手 Emerson 推出全新高性价比 NI PXI 系统,丰富自动化测试产品组合
怎样为自动化测试系统选择合适的直流电源