Testing XMPP Chat Server with JMeter

2019-06-19 11:01发布

问题:

I'm looking to do some performance and load testing on a XMPP/HTTP Web services server using JMeter. I'm new to JMeter and am starting to get my head around the basics, but I would like to get these tests up and running ASAP so am reaching out for some help.

I was able to find a sample JMeter Test Plan which I was hopeful I could adapt and get up and running in no time, however that didn't really pan out, using Wireshark, messages from the client are sent using TCP. I tried using this yandex plugin, but It is throwing errors when I try to use it.

This is the error I get.

2014/02/10 15:11:18 INFO  - jmeter.engine.StandardJMeterEngine: Running the test! 
2014/02/10 15:11:18 INFO  - jmeter.samplers.SampleEvent: List of sample_variables: [] 
2014/02/10 15:11:18 INFO  - jmeter.gui.util.JMeterMenuBar: setRunning(true,*local*) 
2014/02/10 15:11:19 INFO  - jmeter.engine.StandardJMeterEngine: Starting ThreadGroup: 1 : Thread Group 
2014/02/10 15:11:19 INFO  - jmeter.engine.StandardJMeterEngine: Starting 1 threads for group Thread Group. 
2014/02/10 15:11:19 INFO  - jmeter.engine.StandardJMeterEngine: Thread will continue on error 
2014/02/10 15:11:19 INFO  - jmeter.threads.ThreadGroup: Starting thread group number 1 threads 1 ramp-up 1 perThread 1000.0 delayedStart=false 
2014/02/10 15:11:19 INFO  - jmeter.threads.ThreadGroup: Started thread group number 1 
2014/02/10 15:11:19 INFO  - jmeter.engine.StandardJMeterEngine: All thread groups have been started 
2014/02/10 15:11:19 INFO  - jmeter.threads.JMeterThread: Thread started: Thread Group 1-1 
2014/02/10 15:11:49 ERROR - ru.yandex.jmeter.XMPPClientImpl: Error reading data java.lang.RuntimeException: Retries more than 1000, aborting read
    at ru.yandex.jmeter.XMPPClientImpl.read(XMPPClientImpl.java:116)
    at org.apache.jmeter.protocol.tcp.sampler.TCPSampler.sample(TCPSampler.java:414)
    at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
    at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
    at java.lang.Thread.run(Thread.java:744)

2014/02/10 15:11:49 ERROR - jmeter.protocol.tcp.sampler.TCPSampler:  java.lang.RuntimeException: Error reading data
    at ru.yandex.jmeter.XMPPClientImpl.read(XMPPClientImpl.java:152)
    at org.apache.jmeter.protocol.tcp.sampler.TCPSampler.sample(TCPSampler.java:414)
    at org.apache.jmeter.threads.JMeterThread.process_sampler(JMeterThread.java:429)
    at org.apache.jmeter.threads.JMeterThread.run(JMeterThread.java:257)
    at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.RuntimeException: Retries more than 1000, aborting read
    at ru.yandex.jmeter.XMPPClientImpl.read(XMPPClientImpl.java:116)
    ... 4 more

2014/02/10 15:11:49 INFO  - jmeter.threads.JMeterThread: Thread finished: Thread Group 1-1 
2014/02/10 15:11:49 INFO  - jmeter.engine.StandardJMeterEngine: Notifying test listeners of end of test 
2014/02/10 15:11:49 INFO  - jmeter.gui.util.JMeterMenuBar: setRunning(false,*local*) 

I would like to be able to send chat messages, presence updates and composing updates to the server, and ramp up the number of users. this is the basic set of requirements for the tests to be useful to us.

Any help or links to sample test plans would be greatly appreciated.

Thanks.

回答1:

There is a plugin for XMPP that is installable through JMeter Plugins Manager:

  • https://jmeter-plugins.org/?search=xmpp

It should do what you are expecting