一.简介

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. 通过小乌龟从本地主机删除远端svn服务器端的代码或图片文件

    先说解决方案,如果通过windows的右键删除,再次Commit还是会下拉下来,所以需要通过小乌龟的删除来删除这个文件,在删除的那个文件夹里再次提交即可. 图片 1. 选中要删除的文件 2. 右键通过 ...

  2. nrf52832蓝牙开发踩过的坑

    接触nrf52832芯片已经有一段时间了,记录我踩过的坑.这些坑大多都补回来了,愿后来的开发者没有坑~ 先来点开胃小菜 一.环境问题 安装离线包遇到的错误--svdconv exited with a ...

  3. python实现图片的ROI(region of interest)和泛洪填充

    目录: (一)ROI操作 (1)获取感兴趣区域(2)还原操作 (二)泛洪填充floodFill 正文: (一)ROI操作 感兴趣区(Region of Interest,ROIs) 是图像的一部分,它 ...

  4. [loj2850]无进位加法

    (似乎漏了一个数据范围,cf上的题面中还有$\sum L\le 3\cdot 10^{5}$) 考虑$a_{i}=2^{k_{i}}$时(不妨$k_{1}\ge k_{2}\ge ...\ge k_{ ...

  5. 【CSS】水平居中和垂直居中

    水平居中和垂直居中 2019-11-12  15:35:37  by冲冲 1.水平居中 (1)父级元素是行内元素,子级元素是行内元素,子级元素水平居中 ① 设置父级元素为块级元素 display:bl ...

  6. 未能加载文件或程序集“Microsoft.CodeDom.Providers.DotNetCompilerPlatform

    "/"应用程序中的服务器错误. 未能加载文件或程序集"Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Versio ...

  7. Gin 如何动态生成模型 swagger 文档

    在做 API 接口开发时, 一般会统一 API 返回格式, 例如 { "code": 200, "data": { //xxxxx //xxxxx }, &qu ...

  8. C语言 fastq文件转换为fasta文件

    目前只能处理短序列,若要处理长序列,可按照https://www.cnblogs.com/mmtinfo/p/13036039.html的读取方法. 1 #include <stdio.h> ...

  9. 在 vscode.dev 中直接运行 Python !纯浏览器环境,无后端!

    其实有挺长一段时间没有写自己的 VS Code 插件了! 还是要感谢我们 DevDiv 组的 Flexible Friday 活动,让我可以在工作日研究自己感兴趣的项目. Flexible Frida ...

  10. 8.深入TiDB:解析Hash Join实现原理

    本文基于 TiDB release-5.1进行分析,需要用到 Go 1.16以后的版本 我的博客地址:https://www.luozhiyun.com/archives/631 所谓 Hash Jo ...