JMeter 插件安装与使用完全手册
-
功能插件:给 JMeter 增加新的元件,比如新的监听器、新的定时器
-
协议插件:让 JMeter 能测试更多类型的系统,比如 Redis、Kafka
-
可视化插件:让测试结果看起来更直观,比如各种图表

-
下载完成后,把这个 jar 文件复制到 JMeter 的 ‘lib/ext’ 目录 -
重启 JMeter -
点击菜单栏的 ‘Options’ → ‘Plugins Manager’ -
弹出窗口就说明装好了

-
Installed Plugins:你已经装了的插件
-
Available Plugins:可以安装的插件

-
Response Times Over Time:看响应时间怎么变化的
-
Transactions per Second:每秒处理多少请求
-
Active Threads Over Time:看看有多少线程在跑
-
Ultimate Thread Group:可以设置多个负载阶梯,比如先加到 100 用户,保持 5 分钟,再加到 200 用户
-
Stepping Thread Group:阶梯式增加线程
-
Chrome 驱动:https://chromedriver.chromium.org/downloads
-
Firefox 驱动:https://github.com/mozilla/geckodriver/releases
import org.openqa.selenium.Byimport org.openqa.selenium.WebDriverimport org.openqa.selenium.chrome.ChromeDriverSystem.setProperty("webdriver.chrome.driver", "D:/Tools/WebDriver/chromedriver.exe")WebDriver driver = new ChromeDriver()try {driver.get("https://example.com")driver.findElement(By.name("username")).sendKeys("test")driver.findElement(By.name("password")).sendKeys("123456")driver.findElement(By.id("login")).click()Thread.sleep(2000)} finally {driver.quit()}
-
JMeter 插件 → 放到 ‘lib/ext’ 目录
-
第三方 jar 包 → 放到 ‘lib’ 目录(不是 ext)
测试计划里添加 `JDBC Connection Configuration`,配置:Variable Name: mysql_dbJDBC Driver Class: com.mysql.cj.jdbc.DriverJDBC URL: jdbc:mysql://localhost:3306/testdb?useSSL=false&serverTimezone=UTCUsername: rootPassword: 123456然后添加 `JDBC Request` 元件就可以执行 SQL 了。
-
‘jackson-core-2.13.x.jar’
-
‘jackson-databind-2.13.x.jar’
-
‘jackson-annotations-2.13.x.jar’
import com.fasterxml.jackson.databind.ObjectMapperdef mapper = new ObjectMapper()def json = mapper.readTree(prev.getResponseDataAsString())def name = json.data.name.asText()log.info("解析结果: ${name}")
-
‘bcprov-jdk15on-1.70.jar’
-
‘bcpkix-jdk15on-1.70.jar’
import org.bouncycastle.jce.provider.BouncyCastleProviderimport java.security.SecuritySecurity.addProvider(new BouncyCastleProvider())// MD5 加密def md = MessageDigest.getInstance("MD5")def digest = md.digest("test".getBytes())log.info("MD5: " + digest.encodeHex())
-
添加 ‘Redis Data Set’配置元件 -
填写 Redis 连接信息:
Variable Names: userId, tokenRedis Host: localhostRedis Port: 6379Redis Database: 0Redis Key: user:session:list
Broker List: localhost:9092Topic: test-topicSerialization Class: org.apache.kafka.common.serialization.StringSerializer
-
八成是插件冲突或者版本不兼容
-
解决办法:把 ‘lib/ext’ 里的插件一个个删掉排查,或者查看 ‘bin\jmeter.log’ 找原因
-
检查 jar 包是不是放错目录了,要放 ‘lib’ 不是 ‘lib/ext’
-
也有可能是版本冲突,删掉旧版本试试
-
确认浏览器版本和驱动版本得对应上
-
检查 ‘webdriver.chrome.driver’ 路径对不对
-
确认驱动 jar 放对了目录
-
检查数据库服务有没有启动
-
看看 JDBC URL 格式对不对
D:\Jmeter\apache-jmeter-5.6.3\├── bin\ # 启动脚本│ ├── jmeter.bat # 启动文件│ └── jmeter.log # 日志文件,出了问题先看这个├── lib\ # 类库目录│ ├── ext\ # 插件放这里│ │ ├── JMeterPluginsManager.jar│ │ └── 其他插件.jar│ └── *.jar # 第三方库放这里
-
Plugins Manager 装好之后,其他插件基本不用手动下载了 -
JMeter 插件 放 ‘lib/ext’,第三方库 放 ‘lib’ -
遇到问题先看 ‘jmeter.log’,大部分错误原因都能找到 -
不是插件装越多越好,用不到的别装,会影响 JMeter 启动速度
夜雨聆风