If you a JMeter Performance Tester then any point of time you may feel a need for some more JMeter elements which makes the performance testing task simple. Since JMeter is an open-source tool and does not provide full support what a licensed tool does that is why you can expect the lack of advanced features in it. Although many organizations are continuously creating and suppling new JMeter plugins which makes performance testers task easy and fulfil their expectations. In this article, you will get to know about some important JMeter external plugins to support the latest technologies and to make a realistic performance test scenario.
How to install JMeter Plugin Manager?
- Download the ‘plugins-manager.jar’ file from this link.
- Place the jar file in /lib/ext folder of Apache JMeter.
Example: C:\apache-jmeter-5.4\lib\ext - Open JMeter in GUI mode by clicking /bin/jmeter.bat
- Go to Options -> Plugins Manager
- You can see three tabs
- Installed Plugins: The list of plugins which are installed in JMeter
- Available Plugins: The list of plugins which are available, but not installed yet in JMeter
- Upgrades: For update notification
Below is the list of some important plugins:
Plugins for JMeter Graphs:
- PerfMon Metrics Collector: To collect server statistics
- Active Threads Over Time: To represent the active threads at any point in time during the test
- Response Times Over Time: To show the average response time of request/transaction
- Transactions per Second: To represent the transaction rate during the test
- Server Hits per Seconds: To draw the request rate generated by JMeter at any point in time. It represents the number of total requests sent by JMeter to server.
- Composite Timeline Graph: This plugin adds a graph correlation feature in JMeter in which you can select multiple graphs and see a composite view for identifying the error.
- Response Codes per Second: To represent the number of response codes per second. Each response code is represented by a different colour line.
- Response Latencies Over Time: To display the latency of each request at any point in time.
- Bytes Throughput Over Time: To represent the amount of sent and received data between JMeter and server at any point in time. It is also called as Data Throughput.
- Response Times vs Threads: This graph sets a relationship between average response time and the number of threads. This graph is as same as ‘Average transaction response time under load’ graph of LoadRunner.
- Transaction Throughput vs Threads: This graph sets a relationship between the transaction and the number of threads.
- Response Times Distribution: To display the response time distribution of the request during the test.
- Response Times Percentiles: To display the percentiles for the response time values. You can get any percentile value of the request using this graph.
Plugins for JMeter Thread Groups
- Ultimate Thread Group: To create the spike test or step-up test scenario
- Concurrency Thread Group: To create the step-up test scenario
- Arrivals Thread Group: To create a goal-based test scenario using target iteration rate.
- Free-Form Arrivals Thread Group: To create a goal-based test scenario using target iteration rate for spike test.
Plugins for JMeter Timers
- Throughput Shaping Timer: To create a goal-based test scenario using a target request rate.
Plugins for JMeter Listeners
- Flexible File Writer: This plugin enhance the feature of Simple Data Writer by providing additional and advanced options to write the test result data in a file.
- Non-GUI Console Status Logger: To print short summary log to console while JMeter running in non-GUI mode
- Synthesis Report: This listener has the same format as a Summary or Aggregate report. The only difference is that it has an additional filter option.
- AutoStop: To stop the test when a given condition is satisfied.
Plugins for Tools
- Inter-Thread Communication: This plugin helps to pass the value from one thread group to another.
- Tool to check Test Plan consistency: To verify the correctness of JMX (JMeter Test Script)
- HTTP Simple Table Server: To transfer the dataset or CSV files to remote load generators in a distributed architecture.
- Merge Results: To simplify the comparison of two or more load tests by merging the results.
Plugins for Functions
- Custom JMeter Functions: This plugin adds custom functions to JMeter which helps to implement useful logics in the script.
Plugins for Logic Controllers
- Parameterized Controller: This plugin is used to create a reusable test plan modules in which parameter value can be passed.
Plugins for Samplers
- Dummy Sampler: Dummy Sampler helps to create a custom response which is used to validate the logic of regular expression extractor or post-processor.
- UDP Sampler: To perform the load test for DNS, NTP, TFTP, Boot servers, UDP Sampler adds the feature for one-way or two-way communication.
- HTTP Raw Request: To remove the drawback of HTTP Request, HTTP Raw Request Sampler is introduced with TCP support options.
- HDFS Operations: This plugin is used for Hadoop Distributed File System performance testing by inserting some basic information in the sampler.
- Hadoop Job Tracker Sampler: This plugin helps to perform different counter operations on Hadoop application to retrieve various values.
- Set Variables Action: To set/define the value of a variable.
Plugins for Config Items
- Variables from CSV: This config element plugin helps to fetch the value from the CSV file when the variable name is given in the first column and its value is given in the second column.
Plugins for Post-Processors
- XML Format PostProcessor: To format the XML responses. Only recommended for debugging the script.
- JSON To XML Converter: To convert JSON response into XML format.
Reference: https://jmeter-plugins.org/wiki/Start/