一.简介

Taurus是-个开源的自动化框架,用于运行各种开源负载测试工具和功能测试工具。其支持最流行的开源负载测试工具Apache JMeter、Selenium、 Gatling、 The Grinder等。

Taurus的关键特性有:

  • 我们可以使用YAML或JSON来描述性能测试。这也正是我们想要的test as code。
  • 它会根据我们选择的性能测试类型自动下载相应的工具。比如在下例中会使用JMeter ,那么Taurus会自动下载JMeter并安装。

Jenkins的Performance插件就是使用Taurus来进行性能测试的。在进行性能测试之前,首先要准备环境。

二.JMeter测试

1.在运行性能测试环境的机器上,准备Python环境。

2.安装Performance插件

3.不需要自行安装Taurus,Performance插件如果发现机器上没有安装Taurus,它会自动运行pip install bzt命令进行安装。

4.在现有的项目中加入Jenkinsile

pipeline {
agent any stages {
stage('performance test') {
steps {
bzt params: 'blaze_ exist_ _jmeter_ config. yml
}
}
}
}

5.在项目中加入blaze_exist_jmeter_config.yml文件

execution:
- scenario: simple scenarios:
simple:
script: SimpleTestPlan. jmx modules:
jmeter:
#注意,下载文件必须使用. zip后缀
download- link: http://mirrors . tuna . tsinghua . edu. cn/ apache/ /jmeter/binaries/ apache - jmeter- {version}. zip
version: 5.0

blaze_exist_jmeter_config.yml是Taurus的配置文件,用于描述如何进行性能测试。

以上配置很简单,就是执行一个名为simple的场景( scenario) ,这个场景就是执行现有的JMeter脚本。modules配置了JMeter的下载地址及版本。上例中 ,我们指定了国内的下载链接,避免从国外下载。

在Jenkinsfile中,bzt是Performance插件提供的一个步骤。其参数如下:

  • params :字符串类型, Taurus配置文件的路径
  • alwaysUseVirtualenv:布尔类型,如果为false, 则不使用virtualenv进行环境隔离。默认值为true
  • bztVersion :字符串类型, bzt版本
  • generatePerformanceTrend :布尔类型,是否在Jenkins项目详情页生成性能趋势图。默认值为true
  • useBztExitCode :布尔类型,是 否使用bzt步骤的退出码作为Jenkins项目的构建结果。默认值为true
  • useSystemSitePackages :布尔类型,是否为virtualenv加上"--system-site-packages"参数,默认值为true
  • workingDirectory :字符串类型,指定bzt的工作目录
  • workspace:字符串类型,已经废弃,请使用workingDirectory

只有params参数是必需的,其他参数都是可选的。至此,以上用法可以满足大部分人在Jenkins上使用JMeter的需求。关于Taurus配置文件的更多语法,大家可以前往Taurus官网学习。最后,性能测试结果将显示在该项目的首页

Jenkins性能测试的更多相关文章

  1. jmeter+Jenkins性能测试自动化搭建

    一.安装java.ant.maven 1.官网下载tar.gz包 2.解压相应的tar包 3.配置/etc/profile路径 4.source /etc/profile 使配置生效. 二.安装Jen ...

  2. Jmeter+jenkins接口性能测试平台实践整理(二)

    本篇为Jmeter+jenkins+Ant方式执行性能测试 1.设置JDK,ANT环境变量: 2.build.xml文件: <?xml version="1.0" encod ...

  3. Jmeter+jenkins接口性能测试平台实践整理(一)

    最近两周在研究jmeter+Jenkin的性能测试平台测试dubbo接口,分别尝试使用maven,ant和Shell进行构建,jmeter相关设置略. 一.Jmeter+jenkins+Shell+t ...

  4. 基于jmeter,jenkins,ANT接口,性能测试框架

    背景 公司计划推接口和性能测试,搭建这个性能测试框架框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能,接口测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的 ...

  5. 基于Jmeter和Jenkins搭建性能测试框架

    搭建这个性能测试框架是希望能够让每个人(开发人员.测试人员)都能快速的进行性能测试,而不需要关注性能测试环境搭建过程.因为,往往配置一个性能环境可能需要很长的时间. 1.性能测试流程 该性能测试框架工 ...

  6. jenkins+ant+jmeter自动化性能测试平台

    jenkins+ant+jmeter自动化性能测试平台 Jmeter是性能测试的工具,java编写.开源,小巧方便,可以图形界面运行也可以在命令行下运行.网上已经有人使用ant来运行,http://w ...

  7. 基于Jmeter跟Jenkins的自动化性能测试的一站式解决方案(转)

    www.MyException.Cn  网友分享于:2015-08-26  浏览:0次   基于Jmeter和Jenkins的自动化性能测试的一站式解决方案 作者: Yu, Qingguo Shen, ...

  8. Jmeter+maven+Jenkins构建云性能测试平台(mark 推荐)

    转自:http://www.cnblogs.com/victorcai0922/archive/2012/06/20/2555502.html Jmeter+maven+Jenkins构建云性能测试平 ...

  9. 使用Jenkins和Jmeter搭建性能测试平台

    参考文档:http://blog.csdn.net/liuchunming033/article/details/52186157 jenkins的性能测试结果展现插件:https://wiki.je ...

随机推荐

  1. 系统调用篇——SSDT

    写在前面   此系列是本人一个字一个字码出来的,包括示例和实验截图.由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新. 如有好的建议,欢迎反馈.码字不易, ...

  2. 【Microsoft Azure 的1024种玩法】一.一分钟快速上手搭建宝塔管理面板

    简介 宝塔Linux面板是提升运维效率的服务器管理软件,其支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能.今天带大家一起学习的内容为一分钟快速上手搭建 ...

  3. OpenShift 本地开发环境配置(基于 Minishift)

    本文要做什么? 很多为了验证应用在 OpenShift 平台的行为是否正常,或者组成一个简单的开发环境,直接搭建一个 OpenShift/Origin 环境可能太重了,而且运行在本机可能占用内存也太多 ...

  4. [atAGC106F]Figures

    考虑purfer序列,若生成树的pufer序列为$p_{i}$,则答案为$(\prod_{i=1}^{n}a_{i})\sum_{p}\prod_{i=1}^{n}\frac{(a_{i}-1)!}{ ...

  5. [atARC058F]Lroha Loves Strings

    贪心,求出前$i$个字符串所能组成的字典序最小的字符串$ans$(特别的,这里的字典序有$ab>abc$),同时保证剩下的长度能通过$l_{i+1},...,l_{n}$拼接 考虑插入一个字符串 ...

  6. idea数据库报错java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

    通过idea操作数据库,进行数据的增加,运行时报错java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 原因:没有导入mysql-connec ...

  7. 看动画学算法之:二叉搜索树BST

    目录 简介 BST的基本性质 BST的构建 BST的搜索 BST的插入 BST的删除 简介 树是类似于链表的数据结构,和链表的线性结构不同的是,树是具有层次结构的非线性的数据结构. 树是由很多个节点组 ...

  8. 『学了就忘』Linux启动引导与修复 — 69、启动引导程序(grub)

    目录 1.启动引导程序(Boot Loader)简介 2.启动引导程序grub的作用 3.启动引导程序grub的位置 4./grub目录中其他的文件简单介绍 提示: 简单地说,Boot Loader就 ...

  9. Git提交规范

    Commit message 的格式 每次提交,Commit message 都包括三个部分:Header,Body 和 Footer. <type>(<scope>): &l ...

  10. 【JavaWeb安全】RMI-Remote Method Invocator

    RMI-Remote Method Invocator 什么是RMI?RMI有什么用? RMI允许用户通过数据传输,调用远程方法,在远程服务器处理数据.例如将1,3传到远程服务器的加法运算器,加法运算 ...