浅谈Tox之一

本文分享自天翼云开发者社区《浅谈Tox之一》,作者:Moonriver

What is tox? tox是通用的virtualenv管理和测试命令行工具,可用于:
1.使用不同的Python版本和解释器检查您的软件包是否正确安装 2.在每个环境中运行测试,配置您选择的测试工具 3.充当持续集成服务器的前端,大大减少了样板文件并合并了CI和基于shell的测试。 Basic example 首先,使用pip install tox安装tox。 然后将项目以及测试环境的基本信息放入位于setup.py文件旁边的tox.ini文件中: image 只需输入: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将发出警告。 image

点赞
收藏

评论区

加载中...

相关推荐

React之集成测试 –测试环境

本章节介绍了可能会影响你测试环境的因素,并包含某些场景下的建议。测试运行器使用,,等测试运行器能像编写JavaScript一样编写测试套件,并将其作为开发过程的环节运行。此外,测试套件也将作为持续集成的环节运行。Jest与React项目广泛兼容,支持诸如模拟、和等特性。如果你使用CreateReactApp,且

Selenium+Python对开源中国官网进行模拟登录

1.摘要:Selenium是一个开源的和便携式的自动化软件测试工具,用于测试Web应用程序有能力在不同的浏览器和操作系统运行。Selenium不是一个单一的工具,而是一套工具,帮助测试者更有效地基于Web的应用程序的自动化。我们这里用到的python:python3.6操作系统:archlinux

Jenkins+Git+Maven简单教程

关于Jenkins1.什么是JenkinsJenkins是一个可拓展的持续集成(CI)引擎(ContinuousIntegrationEngine)。主要用于:  1.持续、自动地构建、测试软件项目 2.监控一些定时执

Jmeter在windows上安装和环境配置

一、Jmeter简单介绍ApacheJMeter是Apache组织开发的基于Java的压力测试工具。它可以用于测试静态和动态资源,例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器,等等。JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够

DevOps工具链

Devops工具链DevOps实际是一种文化上的变迁,代表了开发、运维、测试等环节之间的协作,因此DevOps工具是非常多种多样的,甚至可以由多种工具组成一个完整的DevOps工具链。此类工具可以应用于一种或多种类别,并可体现出软件开发和交付过程的不同阶段:编码:代码开发和审阅,版本控制工具、代码合并工具构建:持续集成工具

Apache基础教程

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。本教程主要介绍了Apache安装、Apache环境配置、Apache搭建网站、Apache压力测试等与Apach