Create and run JMeter tests
You can run JMeter tests directly from the NeoLoad Web interface. This allows you to take advantage of NeoLoad's real-time reporting and analysis capabilities in your JMeter tests.
Before you start
Before you run JMeter tests with NeoLoad Web, keep these things in mind:
-
You can only run JMeter tests from NeoLoad Web. You can't run them from the NeoLoad GUI.
-
You don't need an active license to run JMeter tests.
-
NeoLoad Web supports JMeter version 5.6.3. Lower version projects may run, but we can't guarantee compatibility.
-
JMeter supports Static and Dynamic zones, but not NeoLoad Cloud zones.
-
JMeter doesn't support multi-node runs.
-
JMeter tests use only a Controller and don't require Load Generators.
-
In reservation mode, select 0 Load Generators and 0 Virtual Users to optimize resource consumption for JMeter tests.
Note: Best practice: Create dedicated zones for JMeter with only JMeter-enabled controllers of the same version. For more information, check out manage your zones.
Prepare JMeter tests
To prepare a JMeter test, follow these steps:
-
Go to Tests > + Create test and select JMeter as the Load injection provider.
-
Go to Tests and select the test you have just created.
-
Select the Configuration tab and perform these actions:
-
Upload your JMeter project as a JMX or ZIP file. Note that ZIP files can only contain JMX files and their associated resources.
-
Select an appropriate zone for your test: Static or Dynamic.
-
-
Prepare your resources. What you need to do here depends on the zone you've selected:
-
I've selected 'Static'.
If you selected a Static zone, you have two options:
-
Option 1: Use a Docker image (recommended). To do this, enter this command in your terminal:
docker run --name jmeter-controller -d --rm -e MODE=Managed -e NEOLOADWEB_URL=[NLWEB_URL] -e NEOLOADWEB_TOKEN=[NLWEB_TOKEN] neotys/neoload-controller:jmeter-latest
Replace [NLWEB_URL] and [NLWEB_TOKEN] with your own NeoLoad Web URL and token respectively.
-
Option 2: Manually configure an existing Controller agent for JMeter.
-
-
I've selected 'Dynamic'.
If you selected a Dynamic zone, configure the zone with the following Docker images:
-
Controller - Docker Image:
registry.hub.docker.com/neotys/neoload-controller:jmeter-latest
-
Load Generator - Docker Image:
registry.hub.docker.com/neotys/neoload-loadgenerator:latest
(only needed if you also plan to run NeoLoad tests in this zone)
-
-
Now, you're ready to run your tests.
Run your tests
You trigger a test run of JMeter tests the same way you trigger any other NeoLoad tests.
However, there are some differences to keep in mind:
-
NeoLoad Web doesn't provide any information about Load Generators during a test run because JMeter is used as the load injection provider.
-
NeoLoad Web doesn't display page values and SLAs.
What's next?
Now that you've created and run a JMeter test, explore different ways to interpret your test results. You can also:
-
Manage your zones to optimize your JMeter testing environment.
-
Run tests in reservation mode to secure dedicated resources for your JMeter tests.