TEAM IM Insights

Automate your Performance Testing using J-Meter and BlazeMeter

Written by Randy Sussner | Dec 3, 2021 10:18:32 PM

JMeter Testing

The Apache JMeter™ application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions.
Source

JMeter is a very effective tool to create test scripts that can be executed against a web application. The script that is created to test the application can include the following:

  • Login to the application
  • Custom scripting to insert java code to introduce specific test data programmatically
  • REST calls to the service layer
  • Load testing - simulating multiple users accessing the system concurrently to mimic typical user load and/or stress testing

Creating a script in JMeter is not a difficult task, but it can be a bit cumbersome, especially as web applications are becoming more asynchronous in nature. Calling the URL of a page in a web application does not guarantee that all the logic being executed is included. As the page loads, potentially several REST calls can be made to various targets to load date, perform updates, etc. JMeter supports scripting REST calls, but each individual REST call must be created by adding a HTTP Request to the transaction controller in JMeter, including defining any parameters and/or the body of the request.

Enter BlazeMeter

BlazeMeter is an open source based, enterprise ready platform that unifies all shift left functionality: Performance Testing, Functional testing, Load testing, etc.
Source

What BlazeMeter allows you to do is ‘record’ a test script via the Chrome browser plugin. After recording the test case directly against the target web application, you can simply download the resulting JMeter script. Following are the simple steps to create your load test script using BlazeMeter:

  • Add BlazeMeter plugin to Chrome browser
  • Once added, an icon appears in the plugins section of the browser
    • Click the record button to start recording
      • Add a step – Login
        • The step name will appear as a transaction controller in the JMeter test script
        • Login to the web application
    • Add a new step for each logical action performed on the target web application
    • When completed with the testing, click the stop recording button
      • The BlazeMeter icon on the browser will blink as it is saving the script data
    • Save/download the generated script
      • Click the BlazeMeter icon
      • Click the Save… button
      • Select JMeter (JMX)
        • Choose the domains related to the tested instance
          • Click Save
        • Go to the Downloads folder in Windows Explorer
          • Save the file named [load test name]-[env].jmx to where it can be accessed by JMeter

 

Run the Script in JMeter

Once you’ve created the script and downloaded the JMX file using BlazeMeter, you can open this script in JMeter. From the example screenshot below, you can see that the HTTP requests have been successfully added to the script, removing the need to create these manually.


 

From here, you can tailor the script to meet your testing needs

  • Configure the thread group to properly load the script with
    • Users
    • Ramp-up time
    • Loop count
  • Add result listeners to review the test results once executed

TEAM IM strives to ensure the quality, security, and performance of our code based deliverables.  We have been using J-Meter for years to perform, stress and scale tests our code on all our client projects (see Implementation services) and in the development process of our own products like M-ConnectModern UIField ServicesAutoRedaction, and AutoRecords.  The introduction of BlazeMeter has made it so much easier and faster to record J-Meter scripts making it faster to produce the Performance test harness, but also importantly providing the flexibility to re-record scripts quickly when the web application changes over time.

These tools are used in conjunction with a range of other quality measures like security, vulnerability, and quality code scans that make up our automated deployment pipeline(s).

About TEAM IM

TEAM IM is a global enterprise solutions and technology company. Utilizing best-in-class technologies to put unstructured data to work, TEAM IM has successfully implemented thousands of business solutions across a diverse spectrum of organizations of varying sizes and industry focus. TEAM IM’s offerings include expert professional services, managed support services, custom development, and solutions in many areas, including Content Management, Records Management, Workflow, Analytics, and Collaboration. TEAM IM has offices across the globe, with resources in every discipline and service offering available to support you, wherever you’re located. For more information, visit our website