pytest介绍

pytest是一款强大的python测试工具,可以胜任各种级别的软件测试工作,可以自动查找测试用并执行,并且有丰富的基础库,可以大幅度提高用户编写测试用例的效率,具备可扩展性,用户自己也可以编写插件实现特定的功能,也可以安装第三方插件,非常容易的与其他工具集成到一起,比如持续集成、接口自动化测试等。小编之前也写过几篇关于pytest的文章,可以到主页查看哈。

tox介绍

tox是一个命令行工具,允许测试在多种环境下执行,tox不仅能测试不同的python版本,还可以用它来测试不同的依赖配置和不同的操作系统的配置。

工作原理大致是,通过setup.py文件为待测程序创建源码安装包,它会查看tox.ini中的所有环境设置,并针对每个环境执行如下操作:

  1. 在.tox目录下创建一个虚拟环境
  2. 使用pip安装依赖包
  3. 使用pip在步骤1的虚拟环境中安装自己的程序包
  4. 运行测试用例

下面通过一个实例来看一下tox的运行过程:

在项目根目录下新建tox.ini文件,然后加入下面的配置

[tox]
envlist = py36 [testenv:dev]
; deps告诉tox确保pytest已经安装,如果有多个测试依赖,可以按行罗列,同时也可以指定版本
deps =
pytest
; 告诉tox在每个测试环境里运行pytest
commands = pytest --junitxml=junit-{envname}.xml
[pytest]
markers =
smoke: 用于冒烟测试
get addopts = -rsxX -l --tb=short --strict
xfail_strict = true
minversion = 3.0
norecursedirs = .* venv src *.egg dist build
testpaths = tests
python_classes = *Test Test* *Suit

在项目根目录下执行tox -e dev查看输出内容。

tox1.jpg

Jenkins配置

  • 安装python插件

tox2.png

  • 创建一个多配置风格的job

tox3.jpg

  • 源码配置

tox4.jpg

  • 配置axes

tox5.jpg

  • 添加python构建脚本

tox6.png

import toxos.chdir(os.getenv("WORKSPACE"))tox.cmdline()

然后构建执行,就可以了。

这篇文章说的比较粗糙,后面会加tox的介绍和Jenkins的配置说明

原文链接

欢迎大家去 我的博客 瞅瞅,里面有更多关于测试实战的内容哦!!

pytest、tox、Jenkins实现python接口自动化持续集成的更多相关文章

  1. Jmeter(二十八)_Docker+Jmeter+Gitlab+Jenkins+Ant(容器化的接口自动化持续集成平台)

    这套接口自动化持续集成环境已经部署差不多了,现在说说我的设计思路 1:利用Docker容器化Gitlab,Jenkins,Jmeter,Ant,链接如下 Docker_容器化gitlab Docker ...

  2. mac 部署安装接口自动化持续集成 jmeter+ant+jenkins

    由于前段时间刚换的工作,公司用的是mac电脑办公,之前办公都是windows系统.刚开始使用时连基本的操作都要去找度娘,很不习惯,新电脑开始就是安装相关的工作工具 下面就说说遇到的哪些坑. 1.  m ...

  3. Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)

    一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 ...

  4. Docker——Jenkins + Git + Registry构建自动化持续集成环境(CI/CD)

    前言 在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD). 本文基于Jenkins+Docker+G ...

  5. 配置jenkins+git+python实现接口自动化持续集成

    1.安装jenkins服务(傻瓜式安装,这里不做描述) 2.windows上访问jenkins地址(http://ip:端口号/),用户名密码登录 3.进入后新建一个job 4.Source Code ...

  6. Jenkins上实现Python + Jenkins + Allure Report 接口自动化测试持续集成,最终测试报告用allure-report进行展示

    项目介绍 接口功能测试应用:http://www.weather.com.cn/data/cityinfo/<city_code>.html 测试功能:获取对应城市的天气预报 源码:Pyt ...

  7. Jenkins+Maven+Jmeter接口自动化持续集成测试

    在上一篇<利用xsltproc转换jtl报告到html报告>中,解决了html报告的问题.本篇主要还是利用Jenkins来做持续集成测试. Jenkins需要安装的插件 Maven Int ...

  8. jenkins maven testng selenium自动化持续集成

    准备环境 首先我们新建一个maven的工程,并且在pom.xml中配置好我们依赖的一些jar包 <dependencies> <dependency> <groupId& ...

  9. 2020年第二期《python接口自动化+测试开发》课程,已开学!

    2020年第二期<python接口自动化+python测试开发>课程,12月15号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学,方便交流 本期上课时间:12月15号-3月29 ...

随机推荐

  1. spring boot 测试插件使用及result风格实例1&打包启动

    本节主要内容: 1:spring boot 小插件使用 2:构建第一个简单的result风格的实例并访问 3:将项目打成jar包后启动并访问. 一:添加boot devtools插件: 执行完成后,查 ...

  2. 虚拟机apache启动

    /usr/local/apache2/bin/apachectl restart 重启 当启动也行 尝试过进入目录运行,比较奇怪,www目录竟然不一致,直接使用 server httpd start ...

  3. OpenCV 输入输出XML和YAML文件

    #include <opencv2/core/core.hpp> #include <iostream> #include <string> using names ...

  4. python3下应用requests

    模拟浏览器请求有两种,一种是不需要用户登录或者验证的请求,一种是需要用户登录或者验证的请求 那么我们先来说说不需要用户登录的方法 这种方式直接可以获取源码,用get的请求方式 登录的方式 获取这种页面 ...

  5. 如何有效地报告Bug

    英文原文:Simon Tatham,编译:Dasn 引言 为公众写过软件的人,大概都收到过很拙劣的bug报告,例如: 在报告中说“不好用”: 所报告内容毫无意义: 在报告中用户没有提供足够的信息: 在 ...

  6. linux安装swoole扩展

    1.首先我们要安装swoole扩展的话,需要把它的包下载下来,下载地址是: https://github.com/swoole/swoole-src 2.下载下来之后进行解压: unzip swool ...

  7. 对H5新增多线程的理解与简单使用

    由于JavaScript的特性决定了JavaScript语言是一种单线程语言,但是有时候我们需要使用多线程比如进行大量的计算时.H5为此新增了多线程的方法. 在这里我是用JavaScript来实现著名 ...

  8. Laravel wxxcx 微信小程序获取用户信息

    wxxcx 是Laravel5微信小程序登录获取用户信息扩展 部署 12345678 # 安装$ composer require iwanli/wxxcx# 注册服务# 在 /config/app. ...

  9. Pip安装TensorFlow报错:MemoryError

    问题描述 使用pip安装TensorFlow时,一直报错,情况如下: 解决办法 使用如下命令可正常安装: pip3 install --no-cache-dir tenstoflow --no-cac ...

  10. 混乱中的ICO平台,会不会是下一个P2P的重灾区?

    当众多巨头和创业者还在为共享打车.共享单车.VR.IP化.互联网金融沉迷时,一种全新的"众筹"正在造就一个又一个暴富神话.其名为ICO,即首次代币众筹,一般指区块链初创项目在众筹平 ...