工具扩展

在之前的博文中,有介绍自定义函数、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. css3动画大全

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. DVWA之 SQL Injection(Blind)

    SQL Injection(Blind) SQL Injection(Blind),即SQL盲注,与一般注入的区别在于,一般的注入攻击者可以直接从页面上看到注入语句的执行结果,而盲注时攻击者通常是无法 ...

  3. Win64 驱动内核编程-15.回调监控注册表

    回调监控注册表 在 WIN32 平台上,监控注册表的手段通常是 SSDT HOOK.不过用 SSDT HOOK 的方式监控注册表实在是太麻烦了,要 HOOK 一大堆函数,还要处理一些 NT6 系统有而 ...

  4. Debuggee not connected 寒江孤钓<<windows 内核安全编程>> 学习笔记

    双机联调出现的问题 真机系统win7 虚拟机系统xp 安装书中的配置一步一步走,发现最后启动系统后,windbg一直显示 Opened \\.\pipe\com_1Waiting to reconne ...

  5. 【opencv】VideoCapture打不开本地视频文件或者网络IP摄像头

    1.前提:成功打开本地USB摄像头 // 创建VideoCapture对象 VideoCapture vc = new VideoCapture(); // 可以成功打开本地USB摄像头 // 参数可 ...

  6. Cannot load driver class: com.mysql.jdbc.Driver

    mysql-connector-java提供了mysql驱动等类库,此处必须引入此依赖,否则将会提示: Cannot load driver class: com.mysql.jdbc.Driver等 ...

  7. JS阻止冒泡事件

    <!DOCTYPE html><html><head> <title></title> <style type="text/ ...

  8. 使用MindSpore的线性神经网络拟合非线性函数

    技术背景 在前面的几篇博客中,我们分别介绍了MindSpore的CPU版本在Docker下的安装与配置方案.MindSpore的线性函数拟合以及MindSpore后来新推出的GPU版本的Docker编 ...

  9. 算法转 Java 后端,2021秋招斩获腾讯、京东、百度等大厂 offer 面经分享!|JavaGuide|Guide哥

    这是一篇来自算法转Java后端的一位读者的投稿!文章主要分享了作者从迷茫崩溃到最终斩获腾讯.京东.百度等大厂 offer 的经历.文章内容很全面.真实,相信可以对正在准备面试的小伙伴有帮助! 看到公众 ...

  10. 动态内存:delete作用于空指针

    在学习<C++primer 第五版>(中文版)中第12章动态内存与智能指针的时候遇到了一个习题,练习12.13: 练习 12.13:如果执行下面的代码,会发生什么? auto sp=mak ...