jmeter中插件的讲解

本文详细介绍了JMeter的各种组件,包括测试计划、线程组、取样器、监听器、断言、定时器、逻辑控制器、后置处理器、配置原件及函数助手的使用方法和案例,帮助读者深入理解JMeter的测试流程和功能。

一:jmeter组件描述

1.测试计划是使用 JMeter 进行测试的起点,它是其它 JMeter 测试元件的容器。
2.线程组:代表一定数量的并发用户,它可以用来模拟并发用户发送请求。
3、取样器(Sampler):模拟各种请求。所有实际的测试任务都由取样器承担,存在很多种请求。
如:HTTP 、ftp请求等等。
4、监听器:负责收集测试结果,同时也被告知了结果显示的方式。功能是对取样器的请求结果显
示、统计一些数据(吞吐量、KB/S……)等。
6、断言:用于来判断请求响应的结果是否如用户所期望,是否正确,非常实用
7、定时器:负责定义请求(线程)之间的延迟间隔,模拟对服务器的连续请求。
5、逻辑控制器:允许自定义JMeter发送请求的行为逻辑,它与Sampler结合使用可以模拟复杂的
请求序列。
8. 配置元件维护Sampler需要的配置信息,并根据实际的需要会修改请求的内容。
9. 前置处理器和后置处理器负责在生成请求之前和之后完成工作。前置处理器常常用来修改请求的
设置,后置处理器则常常用来处理响应的数据。

二:断言

作用:断言(Assertions)可以用来判断响应的数据是否符合预期

1.响应断言

操作:在线程组>>添加>>断言>>响应断言

2.json断言

操作:在线程组>>添加>>断言>>json断言

 

 

 3:Xpath断言

定义:Xpath即为XML路径语言,它是一种用来确定XML文档中某部分位置的语言。xpath基于XML的树状结构,提供在数据结构树中寻找节点的能力

操作:在线程组>>添加>>断言>>xpath断言

 

四:定时器

定时器(Timer)负责定义请求之间的延迟间隔

操作:在线程组>>添加>>定时器>>固定定时器

五:逻辑控制器

1:事务控制器

操作:在线程组>>添加>>逻辑控制器>>事务控制器

2:循环控制器

操作:在线程组>>添加>>逻辑控制器>>循环控制器

 

五:后置处理器

1:http请求默认值(常用)

http请求默认值,会在发送http请求的时候,自带这些参数,复用的作用 

操作:线程组>>配置原件>>http请求默认值

 

2.正则表达式

操作须知
1)确定取值的范围
2)确定取值的左右边界,最好是能够唯一确定的值的边界
3)如果要查看我们的值是否正确,可以使用Debug Sampler
引用${变量名}

案例:我们以手机号码归属地返回的归属地传递第二个接口查询所属地的天气情况

返回值为:{"resultcode":"200","reason":"Return Successd!","result":{"province":"北
京","city":"北京","areacode":"010","zip":"100000","company":"移
动","card":""},"error_code":0}

操作:线程组>>添加>>后置处理器>>正则表达式提取器

 

 

3:JSON Extractor

通过json表达式提取数据

操作:线程组>>添加>>后置处理器>>JSON Extractor

六、监听器

1:察看结果树之cssJQuery_Tester

作用:css/JQuery测试程序只适用于文本响应,可以根据Jsoup或Jodd对响应数据进行过滤和查看

操作:线程组>>监听器>>察看结果树(cssJQuery_Tester)

2:察看结果树之HTML

html模式有三种选项
HTML:HTML视图将响应以HTML方式展示。渲染的HTML可能无法和游览器显示的界面比较,图片和样式表等不
会下载,界面显示比较乱
HTML(source formatted),呈现出由Jsoup格式话的HTML源代码,跟Text模式基本没有区别
HTML(download resources),会下载HTML代码引用的图像,样式表等,呈现出更具体的HTML样式

3:察看结果树之json模式

json模式中有2中选项
JSON:JSON视图将显示树形风格的响应,和Text有明显的区别
JSON Path Tester:JSON路径测试视图将允许测试JSON-PATH表达式,从特定响应中查看提取的数据

4:察看结果树之Document

Document:视图将显示从各种类型的文档中提取文本

5:察看结果树之RegExp Tester

RegExp Tester:Regexp仅使用于我那本响应。点击"Test"按钮,系统将应用regexp对上面板中的文本进行查询,结果显示在面板中

6:察看结果树之Xpath Tester

Xpath Tester:Xpath仅适用于文本响应。上面板显示了纯文本,点击"Test"按钮,系统就会刷选,显示最终的信息

可以在游览器(谷歌)中选定元素右键copy对应的copy xpath

七、配置原件

1:用户自定义变量

当脚本中重复出现相同的变量的时候,可以使用用户定义变量来代替相同的参数

操作:线程组>>配置原件>>用户定义的变量

 

 2:请求元件之参数化txt

当进行批量数据操作的时候,为了方便可以使用参数化来实现

操作:线程组>>配置原件>>CSV数据文件设置

3:请求元件之参数化csv

当进行批量数据操作的时候,为了方便可以使用参数化来实现

操作:线程组>>配置原件>>CSV数据文件设置

在注册接口中,用户名不能重复,我们需要使用不同的手机号注册,如果使用TXT可能不能很好的管理数据,如果使用CSV类型,就方便很多,其他的用法和TXT是一样的,只是创建数据更加方便,我们以注册接口完成操作::http://xg.plk123.cn/api/user/reg.do (phone,yzmCode,userPwd,agentCode)

 

 

八、函数助手

1:csvRead

当进行批量数据操作的时候,为了方便可以使用csvRead函数助手来实现

操作:选项>>函数注释对话框>>_CsvRead

2:randomstring

有的时候有一些参数是不断变化的,我们如果使用csv去做,还是要准备很多不同的数据,但是如果我们用randomstring的话,就可以避免这个问题,但是随机生成的可能会有重复的数据

<think>好的,我现在需要处理用户关于JMeter插件种类及使用说明的查询。首先,用户之前可能已经了解过JMeter的基础功能,现在想进一步扩展其性能测试能力。根据提供的引用内容,用户已经接触过MQTT插件JMeter Plugins项目以及生成测试报告的方法,但需要更全面的信息。 首先,我应该整理常见的JMeter插件分类,确保涵盖核心功能扩展、协议支持、监听器和报告生成等。每个分类下需要列举具体插件,并简要说明其用途和安装方法,同时结合用户提到的引用内容中的信息,比如MQTT插件的安装步骤来自引用[1],JMeter Plugins项目来自引用[2],报告生成参考引用[3]。 接下来,要确保回答结构清晰,分点说明,每个插件类别下给出具体例子,比如线程组扩展中的Concurrency Thread Group和Ultimate Thread Group,这些在性能测试中常用,用户可能对如何配置这些线程组感兴趣。同时,需要提到监听器插件如3 Basic Graphs,这能帮助用户更直观地分析测试结果,引用[2]提到JMeter Plugins弥补了结果展示的不足,所以这里需要强调图表展示的优势。 协议支持部分,用户已经提到了MQTT插件,根据引用[1]中的安装步骤,可以详细说明如何安装MQTT Sampler,并补充其他协议如WebSocket和Kafka,这些是常见的扩展场景,用户可能需要测试不同协议下的性能。 报告生成部分,用户引用[3]提到了使用CSV日志生成HTML报告,这里需要详细说明如何通过命令行生成报告,并推荐HTML Report Dashboard插件,这能提供更美观的报告,符合用户对结果可视化的需求。 安装方法需要统一说明,参考引用[1]和[2]中的步骤,强调将JAR文件放入lib/ext目录并重启JMeter,同时提醒用户可能需要安装插件管理器来简化流程,引用[4]中提到了启动参数的问题,但可能与插件安装关联不大,所以这里可以忽略。 注意事项部分,需要提醒用户版本兼容性,尤其是JMeter 5.4以上对插件管理器的支持,以及插件的安全性和更新频率,确保用户下载来源可靠,避免潜在问题。 最后,生成的相关问题需要覆盖安装问题、性能测试推荐插件、协议支持、报告优化和线程组区别,这些都是用户可能进一步询问的方向,帮助用户深入探索JMeter插件的应用。</think>### JMeter插件分类及使用说明 JMeter插件体系主要分为**核心功能扩展**、**协议支持**、**监听器**和**报告生成**四大类。以下是常见插件列表及详细说明: --- #### 一、核心功能扩展插件 1. **线程组扩展** - **Concurrency Thread Group** 动态控制并发用户数,支持阶梯式压力测试。 ```java 参数示例:目标并发数=100,启动时间=60秒,保持时间=300秒 ``` - **Ultimate Thread Group** 可视化配置复杂线程模型,支持多阶段压力组合[^2]。 2. **逻辑控制器** - **Transaction Controller** 将多个请求合并为单个事务,便于性能分析。 - **Throughput Shaping Timer** 精确控制TPS(每秒事务数),模拟真实业务场景波动。 --- #### 二、协议支持插件 1. **MQTT插件** 支持MQTT协议的发布/订阅测试,需安装`mqtt-jmeter`插件[^1]: ```bash 安装步骤: 1. 下载JAR文件放入$JMETER_HOME/lib/ext目录 2. 重启JMeter后可在Sampler中找到MQTT Sampler ``` - 关键参数:Broker URL、QoS等级、Client ID 2. **WebSocket插件** 通过`WebSocket Samplers`插件测试实时通信协议,支持二进制/文本帧传输。 3. **Kafka插件** `kafka-jmeter`插件支持生产/消费消息的性能测试,需配置Zookeeper地址和Topic名称。 --- #### 三、监听器与图表插件 1. **3 Basic Graphs** 实时展示响应时间、吞吐量、活跃线程数曲线图[^2]。 $$ \text{吞吐量} = \frac{\text{总请求数}}{\text{测试时长}} $$ 2. **Response Times Over Time** 可视化响应时间变化趋势,识别性能拐点。 3. **Composite Graph** 叠加多个指标(如TPS与错误率),分析关联性。 --- #### 四、报告生成插件 1. **HTML Report Dashboard** 生成交互式HTML报告,包含: - 统计摘要(平均响应时间、错误率) - 时序图(吞吐量 vs 响应时间) ```bash 生成命令:jmeter -g testLog.csv -o ./report ``` 引用自报告生成方法[^3] 2. **Big Listener** 导出测试结果到Excel,支持自定义分析模板。 --- #### 五、插件安装方法 1. **手动安装** - 下载插件JAR文件 → 放入`lib/ext`目录 → 重启JMeter 2. **插件管理器** - 通过`Plugins Manager`(需单独安装)搜索并一键安装插件[^2] --- #### 注意事项 1. 版本兼容性:JMeter 5.4+ 对插件管理器支持更完善 2. 插件安全性:建议仅从[JMeter Plugins官网](https://jmeter-plugins.org/)下载
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值