JMeter Test

A quick guide for creating JMeter test on Loadium

Apache JMeter is an open-source tool that supports many protocols like HTTP, JDBC, LDAP, FTP, etc. You can upload your previously created JMX script to Loadium to run tests. You can go to Create Page and choose JMeter Test to start creating a test.

1) Basics

  • Test Name is a mandatory field as it will be referenced in future usage.

  • Project is an optional field that allows you to assign your tests to a specific project in order to group them.

  • Upload File field let you upload JMeter scripts, CSV files or other third-party JARs. Whenever a test is saved, newly added files are uploaded to our servers. In case there’s an update, Loadium will automatically update the files by matching them by their file name.

Note: At least a JMX file is mandatory to save a performance test project.

Note: In case, your JMeter scripts are using a CSV file, this file’s location should be an absolute path.

🙌🏻 Example: In case JMX file has “/usr/loadium/perf_test/user_data.csv” as CSV file path, it should be changed to “user_data.csv”. Uploaded files will be stored in the same directory in remote engines so there shouldn’t be a relative path.

  • Split CSV File is optional. Select your CSV files to split their data into engines uniquely. You can find more detailed information about this feature here.

  • Notes: Allows you to enter additional details and self-explanatory notes.

  • Send Email: In case you would like to be notified by e-mail after the test ends, you can enable this feature. You can find detailed information about this feature, here.

2) Configuration

Configuration panel allows you to set the size and progression of your load test. Depending on the configuration set here, the behavior of the load will be determined. In case you want to override Loadium parameters, tick the checkbox next to each parameter to use the uploaded JMeter script’s configuration.

  • Total Users: Total amount of virtual users that are going to execute the script. Calculated by Engine Count * Users Per Engine

  • Engine Count: Amount of engines that will be used for the test execution.

  • Users Per Engine: Amount of users (threads) that will be generated from each engine to execute the script.

  • Ramp-Up Time: The amount of time that should pass (in seconds) to reach the total users, starting from 0 threads. Threads increase linearly.

🙌🏻 Example: In case you have 500 total users and 10 seconds ramp-up time, for every second, 50 threads will be generated by Loadium.

  • Iteration: Number of the script executions will be iterated by virtual users.

  • Duration: Test period (in minutes) for Loadium to execute.

Note: The test will be concluded whichever is reached first; test duration or iteration.

The test can be concluded before the iteration count is reached, due to the duration being reached. The same rule applies to vice versa. If all iterations are completed before the defined duration, the test will be concluded.

  • Sandbox Test: Allows you to run free tests to debug your tests. If you just want to make sure that your system is ready for testing, or your script is properly working, you can enable this option (enabling sandbox test will limit the test configuration).

3) Geolocation

Cloud Services

Loadium allows you to run globally distributed load tests by providing servers. Lets you select regions to execute situational user simulations. When a location is chosen, engines will be generated in that particular region and all requests will come from that region.

You can find more detailed information on the Geolocation page.

Private Location

Instead of provided servers, Loadium allows you to create custom locations with Docker integration to run load tests from your personal servers.

You can find more detailed information on the Private Location page.

4) Advanced Settings

Dedicated IP: If the system that is going to be tested has access limitations such as a firewall or DDoS protection, you can rent static IP’s and whitelist them to allow Loadium to perform a load test on the system. Enabling this option will run the test with the rented dedicated IP’s. To rent dedicated IP’s, please contact our support.

You can find more detailed information on the Dedicated IP page.

JMeter Version: Choose the JMeter version where you implemented your test scripts.

Network Type: Loadium lets you choose different network types to simulate network behavior by imitating the bandwidth and network delays. They all have different bandwidth and network delay values. In case nothing is selected, by default Wifi is set to all engines. You can find more detailed information on the Network Type page.

Limit TPS: This parameter allows you to limit the total throughput (requests happening per second) of the test’s execution. This limitation works on engines individually, so if you are using “X” amount of engines, the maximum throughput across all engines will be limited to X * Limit Value. You can find more detailed information about TPS here.

You can find more detailed information on the TPS page.

You can check out the following pages for additional test settings:

If you don't see the answer to your question here, please reach out to us to let us know! We're always improving our documentation.

Happy testing!

Last updated