You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于结合Groovy、MQ Broker与JMeter搭建测试计划的技术咨询

JMeter测试计划配置问题求助

背景与问题

  • 本地部署WebSphere MQ服务器,同时存在接收HTTP请求并返回响应的Endpoint,需监控请求响应耗时。
  • 使用JSR223 Sampler从队列消费消息,提取内容存入messageText变量,尝试通过CSV数据集配置将变量传入HTTP请求线程失败,请求无法正常执行。
  • 当前JSR223消费线程完成迭代后才会执行HTTP请求,不符合预期流程。

需求与疑问

  • 需配置控制器,使每个虚拟用户在每次迭代中依次完成MQ消息消费 → HTTP请求发送 → 响应耗时记录的流程。
  • 性能测试是否需以批量模式运行?对应的执行策略是什么?
  • 认证Token每2小时过期,需模拟真实用户流程:先认证获取Token,再发送请求,该如何配置?

附:MQ消息消费Groovy代码

import com.ibm.mq.*

def strQueueManagerName = "QM2"
def strChannelName = "CHANNEL1"
def strQueueName = "QUEUE1"

def strServerName = "127.0.0.1"
def intPort = 1414

MQEnvironment.hostname = strServerName
MQEnvironment.channel = strChannelName
MQEnvironment.port = intPort
MQEnvironment.properties[MQC.TRANSPORT_PROPERTY] = MQC.TRANSPORT_MQSERIES

try {
    def mqQueueManager = new MQQueueManager(strQueueManagerName)

    // Define a Queue
    def queue = mqQueueManager.accessQueue(
        strQueueName,
        MQC.MQOO_INPUT_SHARED | MQC.MQOO_FAIL_IF_QUIESCING
    )

    def getOptions = new MQGetMessageOptions()
    def retrievedMessage = new MQMessage()

    // Read a message from the queue
    queue.get(retrievedMessage, getOptions)

    // Process the retrieved message
    def messageBytes = new byte[retrievedMessage.messageLength]
    retrievedMessage.readFully(messageBytes)

    def messageText = new String(messageBytes, "UTF-8")  // Assuming the message is encoded in UTF-8

    // Log the message
    log.info("Received message: " + messageText)

    // Save the messageText to a variable
    vars.put("messageTextVariable", messageText)

    // Mark the message as removed from the queue
    retrievedMessage.messageFlags = MQC.MQMF_NONE
    retrievedMessage.correlationId = MQC.MQCI_NONE
    queue.put(retrievedMessage)

    queue.close()
    mqQueueManager.disconnect()
} catch (Exception ex) {
    log.error(ex.message)
}

内容的提问来源于stack exchange,提问作者Randy mangal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 23:35:00