2

我有一个 JMeter JMS 点对点测试,其中我将一个 XML 文档发送到一个队列中,该队列进入 MongoDB 并回复 XML 文档。

当我在 JMeter 中运行测试时,我可以通过 RedHat 日志看到请求已进入 Mongo 并正确返回。尽管在 JMeter 中,测试失败并且我收到以下消息:

“没有收到回复消息”

如果我将“ communication-style”设置为“ Request Only”,则测试通过。我所有的连接都是正确的,我使用的是 JMeter 2.11 版。

我已在论坛上阅读以更改 jmeter.properties 文件以启用JMSSampler.useSecurity.properties=false. 这没有奏效。

对此的任何想法将不胜感激,

谢谢,

喀什

4

3 回答 3

2

固定的。

我删除了“ queue.Response”的属性以及 JNDI 名称接收队列字段。

这似乎奏效了

于 2014-04-25T11:40:23.287 回答
0

我有同样的问题,这是如何解决的:

如果您使用不同的队列进行请求和响应,那么使用 messageID 或 CorrelationID 来跟踪响应消息的预定义属性都不起作用。

因此不要选择两者中的任何一个 - 取消选择两者。相反,为相关 ID 定义任何 JMS 属性的新属性,如下所示

属性名称:JMSCorrelationId 属性值:MesgID-${_time(,)}

这应该可以正常工作。

于 2015-11-29T15:15:09.627 回答
0

这个问题可以通过提供 JMSCorrelationId 属性来解决 提供属性值为 MsgId-${__time()} 注意双下划线作为时间函数的后缀(https://jmeter.apache.org/usermanual/functions.html#__time)这将确保在每个请求上发送当前毫秒的相关 Id,并将在返回时从响应中匹配。

注意:1. 使用通信方式作为请求响应 2. 不要选中任何备用字段复选框 3. 提供 JNDI 名称接收队列,在该队列上发送响应

于 2017-05-09T09:03:56.133 回答