使用Jmeter Redis数据集从Redis获取价值

时间:2017-02-11 10:37:21

标签: java redis jmeter escaping key-value

我尝试使用Jmeter中的Redis数据集插件从Redis获取价值。如果Redis键很简单(如示例https://www.youtube.com/watch?v=u0vu3tfrdKc中所示),则会提取其值而不会出现任何问题。在我的例子中,该值存储在复杂的键中,如 - user.confirmation.6869427a27e784f7e7cbb0746714c27d ,当我在Redis数据集中将其用作“Redis Key:”的值时,弹出以下消息在没有执行脚本的情况下在屏幕上,并且jmeter键值不会返回:

2017/02/11 12:57:57 INFO  - jmeter.engine.StandardJMeterEngine: Running the test!
2017/02/11 12:57:57 INFO  - jmeter.samplers.SampleEvent: List of sample_variables: []
2017/02/11 12:57:57 INFO  - jmeter.gui.util.JMeterMenuBar: setRunning(true,*local*)
2017/02/11 12:57:58 INFO  - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 1 : Thread Group User Service
2017/02/11 12:57:58 INFO  - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group Thread Group User Service.
2017/02/11 12:57:58 INFO  - jmeter.engine.StandardJMeterEngine: Thread will start next loop on error
2017/02/11 12:57:58 INFO  - jmeter.threads.ThreadGroup: Starting thread group number 1 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false
2017/02/11 12:57:58 INFO  - jmeter.threads.ThreadGroup: Started thread group number 1
2017/02/11 12:57:58 INFO  - jmeter.engine.StandardJMeterEngine: All thread groups have been started
2017/02/11 12:57:58 INFO  - jmeter.threads.JMeterThread: Thread started: Thread Group User Service 1-1
2017/02/11 12:57:58 INFO  - jmeter.threads.JMeterThread: Stop Thread seen: org.apache.jorphan.util.JMeterStopThreadException: End of redis data detected, thread will exit 
2017/02/11 12:57:58 INFO  - jmeter.threads.JMeterThread: Thread finished: Thread Group User Service 1-1 
2017/02/11 12:57:58 INFO  - jmeter.engine.StandardJMeterEngine: Notifying test listeners of end of test 
2017/02/11 12:57:58 INFO  - jmeter.gui.util.JMeterMenuBar: setRunning(false,*local*)

此外,在Redis控制台本身中接收值没有问题。 尝试屏蔽键中的点也无济于事。 我期待收到您的任何评论。

1 个答案:

答案 0 :(得分:1)

为了测试,我创建了一个像这样设置的Redis(键,值):

key: user.confirmation.6869427a27e784f7e7cbb0746714c27d 
row1: user.confirmation.6869427a27e784f7e7cbb0746714c27d
row2: test

我可以使用Redis数据集检索两个行数据,因此它认为该问题与长名称无关,但可能在Redis数据存储和JMeter中此名称不同。这就是JMeter抱怨的原因:" 检测到redis数据结束,线程将退出"