JMeter freezes when you run the test from remote server - jmeter

On my remote host I am running jmeter server
./jmeter-server
I have kicked the jmeter from my local machine using this command
./jmeter -Jremote_hosts=Remote Host IP
GUI Pops up
Open my test.jmx and Run->RemoteHost->RemoteHostIP
At this time, jmeter freezes, I was unable to do much after that
my test had 1 thread, 60secs ramp, run 1 time
Any idea why is it frozen and I am not be see any test results. I do not have any listeners except "View Results Tree"

I faced the same issue. In my case, it was due to the firewall (ufw on ubuntu). After stopping the firewall I was able to run the tests normally.

Related

Facing issue while runningj ustb4/jmeterwith docker -- I am trying to run jmeter container with another container localhost:55001 in windows system

Facing an issue while running justb4/jmeter with docker -- I am trying to run jmeter container with another container localhost:55001 in the windows system
I have two container
--one container with localhost:55001
--another container with justb4/jmeter
Now I am trying to run justb4/jmeter jmx file, which in my local
docker run -d -p 8081:88 --network="HSM" --mount type=bind,source="/D/D_Backup/Jmeter/apache-jmeter-5.2.1/bin",target="/opt/apache-jmeter-5.4.3/bin" justb4/jmeter -n -t bin/.jmx -l bin/NextGen_HSM_Run.jtl -e -o bin/h.html
Getting below error
1651205770221,39,GetConnectionStatus_1,Non HTTP response code: org.apache.http.conn.HttpHostConnectException,Non HTTP response message: Connect to localhost:55001 [localhost/127.0.0.1] failed: Connection refused (Connection refused),HSM.GetConnectionStatus.Thread 2-1,text,false,Test failed: code expected to contain /200/,2647,0,1,2,http://localhost:55001/GetConnectionStatus,0,0,39
But when I am running from JMeter all transactions are passing.
If you want to use justb4/jmeter for testing another application in another container you need to use not localhost in JMeter but the IP address of the container where the application is running.
So you need to obtain the IP of the "other" container with something running on port 55001 using docker inspect command and replace localhost with the IP address of that container in the test plan.
More information: Networking with standalone containers
Just in case I truly hope you know what you're doing because running JMeter and the application under test on the same machine, especially virtual, especially a Docker one is the worst approach for assessing the performance as JMeter might be very resource intensive as well as the system under load so you will have hard time analyzing the results due to race conditions so I would recommend reconsidering your test lab setup or at least using software like cAdvisor or JMeter PerfMon Plugin to monitor resources utilization.
However the best option would be having the system under test and JMeter on a different physical or at least virtual machines.

JMeter - Remote Testing on Linux

I am executing JMeter remote testing with 1 master machine (192.168.0.1) and with 7 slave machines with 3 VMs (192.168.0.2 to 192.168.0.4) on a network interface and 4 other VMs (192.168.0.5 to 192.168.0.8) are in a different network interface.
My JMeter script is located at Master machine - 192.168.0.1
I tried to execute my test with the following command
./jmeter -n -t /home/lup01/Document/LuP2021/ITonICE_Lasttest_InfluxDebug_09032021.jmx -l /home/lup01/Document/LuP2021/LuP2021_LastTest_001_14-10-2021_7VMs.jtl -R 192.168.100.2,192.168.100.3,192.168.100.4 -Djava.rmi.server.hostname=192.168.100.6,192.168.100.7,192.168.100.8,192.168.100.9
However, the test never started. the screen just hung and after 15 minutes i had to stop the test. I did the sample run only with 3 threads.
On course of debugging, i also checked that, when i executed the test with
./jmeter -n -t /home/lup01/Document/LuP2021/ITonICE_Lasttest_InfluxDebug_09032021.jmx -l /home/lup01/Document/LuP2021/LuP2021_LastTest_001_14-10-2021_7VMs.jtl -R 192.168.100.2,192.168.100.3,192.168.100.4
the test was running fine with 3 VMs which are on the same interface as the master machine
However, when i executed the 2nd part
./jmeter -n -t /home/lup01/Dokumente/LuP2021/ITonICE_Lasttest_InfluxDebug_09032021.jmx -l /home/lup01/Dokumente/LuP2021/LuP2021_LastTest_001_14-10-2021_7VMs.jtl -Djava.rmi.server.hostname=192.168.100.6,192.168.100.7,192.168.100.8,192.168.100.9
the test got executed but the load was generated only on the master machine (192.168.0.1). i validated this by printing the host name in the result file.
Can someone please guide me what changes i need to do to get the test running successfully and the load being generated at the slave machines 192.168.100.6 to 192.168.100.9?
JMeter Master machine doesn't generate any load, it only reads .jmx script, transfers it to slaves and collects results.
It doesn't make sense to run more than 1 JMeter process on 1 machine, it doesn't provide any benefit and just consumes resources, if you have only one machine - run a single JMeter process, just make sure to follow JMeter Best Practices and properly tune this JMeter instance for high throughput testing
If this is some form of an experiment and you have to run multiple JMeter processes on a single host and would like to bind different JMeter instances to different network interfaces - you can do it via "Advanced" tab of the HTTP Request sampler (or HTTP Request Defaults if you have more than one sampler) like it's described in Using IP Spoofing to Simulate Requests from Different IP Addresses with JMeter

How to run JMeter Webdriver samplers on a remote machine

I am trying to run JMeter Webdriver samplers in IE on a remote machine. I have changed remote_hosts to the IP address of the remote machine. JMeter server on the remote machine is also started. When I run the tests from the JMeter GUI on the local machine (Run->Remote Start menu) I can see the command line window in remote machine showing
"Started the test..."
and immediately
"Finished the test..."
So the test runs but nothing actually happens.
I must be missing some configuration.
Can someone please help?
You need to install the same Selenium/WebDriver Support plugin to the remote slave(s). This can be done either by copying the whole JMeter installation to the slave host(s) or using JMeter Plugins Manager on each slave.
You need to download Internet Explorer Driver binary and put it to the same location as on the master host.
In case of any problems check jmeter-server.log file on remote slave - normally it should contain the root cause (or clue on what is wrong)

How to stop the jmeter server from command line

We are implementing CI for performance testing, As a part of this we have to run scripts from 3 different machines, I am facing an issue while stoping the Jmeter server in slave machines after the execution.
I am executing the shutdown.bat, stoptest.bat but no luck.
Please help me, How to stop the Jmeter server from the command prompt which is currently running.
Thanks in Advance.
Configure your jmeter.properties file like this server.exitaftertest=true. It will stop the JMeter-server after the test execution.

Should jmeter master start after 1/2 minutes of server started when running tests in non gui mode (master and slave)

Bamboo-jmeter task: Should time gap there before starting the jmeter master/slave. We have created bamboo task (SSH task1-with slave host, SSHtask2-with 2nd slave host, SSH task3-with master host and run commands). When first time the the task getting an error remote engine is not able to configured whereas able to telnet the hosts, also jmeter-server is already started.
However when disable SSHtask1 and task2 for the 2nd time run, it is able to run successfully and getting results also.
Should jmeter master start after 1/2 minutes of server started? Please suggest
Able to overcome the problem by adding sleep time of 120 seconds after running the jmeter-server before starting the jmeter master.

Resources