java - 使用 Jmeter 进行 Cassandra 测试
问题描述
我无法使用 Jmeter 运行 Cassandra。即使包含 Cassandra Jmeter 插件的所有 jar 文件,也会显示以下错误:
Response message: javax.script.ScriptException: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during class generation: java.lang.NoClassDefFoundError: Unable to load class com.datastax.driver.core.Session due to missing dependency org/apache/cassandra/transport/Message$Request
解决方案
您收到的错误是关于 JMeter 类路径中缺少 org.apache.cassandra.transport.Message 类,该类可以在cassandra-all.jar中找到,但是您需要选择正确的版本以避免Jar Hell
查看JMeter Cassandra 插件安装说明,您需要:
构建插件:
mvn dependency:copy-dependencies install -DexcludeGroupIds=org.apache.jmeter
将插件复制到 JMeter 的“lib/ext”文件夹:
cp -Rf ~/CassJMeter/target/CassJMeter-0.2-SNAPSHOT.jar lib/ext/
将所有插件的依赖项复制到 JMeter 安装的“lib”文件夹中:
cp -Rf ~/CassJMeter/target/dependency/* lib/
- 重新启动 JMeter 以拾取 .jars
确保cp
命令成功,你可以通过echo $?
在终端中运行来检查它的状态码,它应该返回0
您可能还会发现以下文章很有用:
推荐阅读
- ios - 支持 Swift 4.2 的 Cucumberish 的任何替代品?
- azure - 如何从发布管道/ARM 模板设置 Application Insights
- c# - 通过类的 SOAP 抽象不能正常工作?
- python - tensorflow python 3.7.2使用anaconda导入错误
- javascript - HTML表格中的highcharts没有获得x轴键
- c++ - 在下面的 C++ 代码行中使用 (n/8) 和 (n*7/8) 的目的是什么?
- android - 安装 Firebase 和地图后反应本机致命错误和应用程序崩溃
- java - 奇怪的情况:JcomboBox.getSelectedItem() 返回一个不可转换为 String 的对象
- python - 使用字符串中的十六进制字符附加字符串
- umbraco - 从 Umbraco 中的直接父级访问内容