工具扩展

在之前的博文中,有介绍自定义函数、Java请求扩展,博文如下:

Jmeter二次开发——基于Java请求

Jmeter二次开发——自定义函数

上述内容,是按自己的需要来进行针对性扩展,从而实现来满足对应测试需求。

开发复杂的插件,工作量还是蛮大的,那有没有官方可扩展的插件呢,答案是有的,今天,就来对自己的Jmeter工具扩展一下。

扩展包

在扩展之前,需要下载扩展包,下载地址,下载 plugins-manager.jar ,下载后,将文件放到Jmeter目录 lib/ext 下。如下所示:

需要注意的是,如果已经打开了Jmeter,需要重启Jmeter才生效哦。

重启Jmeter之后,查看Jmeter面板,工具栏中会多一个图标,如下:

点击图标,查看界面中的内容,分别是已安装的、可安装的、可升级的,如下所示:

函数扩展

我们可以看到,可安装tab下,有很多扩展项,官网也有详细文档介绍,点击查看具体文档

我们先来扩展下函数,在可安装tab下,选择 Custom JMeter Functions ,具体操作如下所示:

选择后,点击Apply Changes and Restart Jmeter,Jmeter会下载对应Jar包,并重启,使扩展生效。

重启后,我们来看函数助手中的函数,会多展示一些,未扩展之前,这些函数时不展示的,比如:chooseRandom,如下所示:

其实还有其他函数,我们直接来看官网介绍,点击查看详情,会增加15个函数,具体如下:

  • chooseRandom
  • doubleSum
  • env
  • isDefined
  • MD5
  • base64Encode
  • base64Decode
  • strLen
  • substring
  • strReplace
  • strReplaceRegex
  • uppercase and lowercase
  • iterationNum
  • caseFormat

函数的具体用法就不介绍了,官网上的文档有详细介绍。

线程组扩展

平时在做性能测试的时候,用默认的线程组,有些场景不好设计。同样的,可以通过线程扩展来解决,里面就有我们熟悉的 jp@gc - Stepping Thread Group。扩展方式我们具体来看:

由于之前已经讲了扩展的入口,这里就不说了,操作一样,进入下扩展弹框中,添加Custom Thread Groups,如下所示:

右侧显示,添加这个插件,会新增5个线程组,添加后,我们重启Jmeter,具体来看下线程组,是不是多了5个,如下所示:

从图中可知,的确新增了5个线程组,平时用的比较多的是 jp@gc - Stepping Thread Group,详细官网文档

具体使用,后续博文再讲。

监听扩展一

真正做性能测试,是需要在非GUI模式下运行,避免Jmeter本身对性能结果的影响。但界面中,Jmeter也是支持查看监控的,比如:内存、CPU等,那如何扩展来实现呢?我们具体来看。

注意:真正性能测试,测试过程中,不建议通过Jmeter面板查看监控数据。

我们在扩展弹框中,选择 PerfMon (Servers Performance Monitoring) 安装并重启,操作如下:

重新后,我们配置监听器,就可以看到我们刚扩展的监听器了,如下所示:

添加监听器,配置数据行,可以选择不同的指标,比如CPU、内存、IO,如下所示:

使用说明可以见官方文档,就不细说了。

监听扩展二

除了上面的图形监听外,还有些其他监听工具,按官网给的jar包扩展即可,jar包获取地址:https://jmeter-plugins.org/downloads/old/

下载JMeterPlugins-Standard-1.4.0.zip和JMeterPlugins-Extras-1.4.0.zip,解压后,将对应的jar包放到Jmeter安装目录下的lib\ext路径下,重启Jmeter即可。

查看Jmeter监听器列表,可以看到多了很多以jp@gc开头的监听器,如下所示:

扩展的元件,后续结合实际场景再来介绍,今天就只分享元件扩展这部分,下期再见。

Jmeter——元件扩展,使其功能更全面的更多相关文章

  1. 转 jmeter 实现loadrunner init end 功能

    一.JMeter 介绍 Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序).它可以用来测试静态和动态资源的性能,例如:静态文件, ...

  2. jmeter元件,作用域与优先级

    jmeter元件,作用域与优先级 一.jmeter元件 1.配置元件:优先级最高 1.1 重点使用元件:csv数据文件设置.用户定义变量.计数器 2.取样器:根据不同协议来编写请求脚本的元件 2.1 ...

  3. 四、C# 5.0 新特性——Async和Await使异步编程更简单

    一.引言 .NET 4.5 的推出,对于C#又有了新特性的增加--就是C#5.0中async和await两个关键字,这两个关键字简化了异步编程,之所以简化了,还是因为编译器给我们做了更多的工作,下面就 ...

  4. 使用C++扩展Python的功能 转自:http://blog.csdn.net/magictong/article/details/8897568#comments

    使用C++扩展Python的功能 环境 VS2005Python2.5.4 Windows7(32位) 简介 长话短说,这里说的扩展Python功能与直接用其它语言写一个动态链接库,然后让Python ...

  5. Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试

    Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试   需要FQ才能安装,使用时应该不用FQ了,除非使用postman的历史记录功能:   非常棒的C ...

  6. 让Docker功能更强大的10个开源工具

    让Docker功能更强大的10个开源工具 更好的管理.Web前端程序.更深入地了解容器应用程序,Docker生态系统正在迅速发展,这还得归功于其充满活力的开源社区. 软件项目的成功常常根据其催生的生态 ...

  7. 发一个比trace功能更强大debug工具,MonterDebugger

    经常看到兄弟说trace不出东西啊,这样给你调试会带来很多不便:加入说我们需要将运行时的debug信息和之前某个版本的进行比对:又加入说我们需要在运行时通过debug动态调整显示对象的属性:查看当前整 ...

  8. 利用日志使管理Linux更轻松

    利用日志使管理Linux更轻松 操作系统的日志主要具有审计与监测的功能,通过对日志信息的分析,可以检查错误发生的原因,监测追踪入侵者及受到攻击时留下的痕迹,甚至还能实时的进行系统状态的监控.有效利用日 ...

  9. 三种扩展 Office 软件功能的开发模型对比 – Office Add-In Model, VBA 和 VSTO

    当 Office 用户需要针对文档自定义新功能时,可以求助于 VBA 或者 VSTO 两种方式.Office 2013 富客户端以后,微软为 Office 平台上的开发者提供了一种新模型 --- Of ...

随机推荐

  1. Python学习笔记-PuLP库(3)线性规划实例

    本节以一个实际数学建模案例,讲解 PuLP 求解线性规划问题的建模与编程. 1.问题描述 某厂生产甲乙两种饮料,每百箱甲饮料需用原料6千克.工人10名,获利10万元:每百箱乙饮料需用原料5千克.工人2 ...

  2. Word/Excel文档伪装病毒-kspoold.exe分析

    一. 病毒样本基本信息 样本名称:kspoold.exe 样本大小: 285184 字节 样本MD5:CF36D2C3023138FE694FFE4666B4B1B2 病毒名称:Win32/Troja ...

  3. Android APK程序的smali动态调试

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/71250622 一.Apktool的下载和安装 Apktool是Android逆向分 ...

  4. Aircrack-ng破解无线WIFI密码

    首先,如果kali是装在虚拟机里面的话,是不能用物理机的无线网卡的.所以,如果我们要想进行无线破解,需要外接一个无线网卡设备,并且该设备要支持 monitor 监听模式 iwconfig :系统配置无 ...

  5. 利用 Windows 线程池定制的 4 种方式完成任务(Windows 核心编程)

    Windows 线程池 说起底层的线程操作一般都不会陌生,Windows 提供了 CreateThread 函数来创建线程,为了同步线程的操作,Windows 提供了事件内核对象.互斥量内核对象.关键 ...

  6. CVE-2017-11826:Office Open XML 标签嵌套解析混淆漏洞

    \x01 前言 CVE-2017-11826 据说是 360 在 2017 年 9 月底发现的一个关于 XML 格式解析的一个漏洞,之后微软在 10 月份发布了关于 CVE-2017-11826 的补 ...

  7. 【Android Jetpack高手日志】DataBinding 从入门到精通

    前言 DataBinding 数据绑定库是 Android Jetpack 的一部分,借助该库可以使用声明性格式(而非程序化地)将布局中的界面组件绑定到应用中的数据源.我个人觉得,使用 DataBin ...

  8. PHP中ftp的连接与操作

    1.操作类 <?phpclass FtpService{ protected $connect = 0; public function __construct() { $this->co ...

  9. postman Variables变量的详解与应用

    变量 变量类型(按照作用域划分) 全局变量(全局环境里面的变量) 集合变量(请求集合里声明的变量) 自定义环境变量 数据变量(在runner时文件变量) 本地变量 变量权重类型 全局变量 < 集 ...

  10. 关于Java的 long,float 类型

    发现了这么一个坑: 1.2f+3.4f=4.60000014305114751.2d+3.4d=4.6