• Overview
  • Documentation
  • Version history

Description

JMeter is a testing tool to analyze and measure web application performance. The JMeter plugin imports the test results data in HCL DevOps Velocity (HCL Accelerate) metrics.

Quick Info

Product icon

Product

HCL DevOps Velocity (HCL Accelerate)
Plugin type icon

Type

plugin
Compatibility icon

Compatibility

HCL Accelerate version 2.0.x or later
created by icon

Created by

HCLSoftware
Website icon

Website

Published Date

Last Updated

Summary

The Apache JMeter plugin provides for integration with an Apache JMeter server. Data is uploaded to the HCL Accelerate server using an HTTP Post request.

Usage

To use the Apache JMeter plugin, the plugin must be loaded and an instance created. Load the plugin into the HCL Accelerate container if necessary. From the user interface, click Settings > Integrations > Plugins. On the Plugins page, locate the plugin and click Load Plugin. To create an instance, locate the plugin and click Install. The plugin is now listed below those plugins to be installed and available for invoking.

Integration type

The JMeter plugin parses CSV and XML data from the JMeter server.

Invoking the plugin

To gather data from the JMeter server, send an HTTP Post request with the data to parse. When there is a hit to the HCL Accelerate quality data endpoint, the data is parsed and displayed as metrics in HCL Accelerate. You can use various methods such as Postman, REST calls, CURL, and CI/CD tools like Jenkins to invoke the plugin endpoints.

Invoke using Jenkins plugin

Install the UrbanCode Velocity plugin into your Jenkins server. In your freestyle job or pipeline use the UCV-Upload Metrics File to UrbanCode Velocity step and provide the required fields. This step allows your build job to upload generated coverage results files to HCL Accelerate.

The following is an example using Jenkins plugin.


pipeline {
   agent any
   stages {
      stage('jmeterMetrics') {
         steps {
            step([$class: 'UploadMetricsFile',  appName: 'My Jmeter Test', dataFormat: 'jmeterXML', filePath: '<location of the jmeter report>', name: 'my-jmeter-test', pluginType: 'jmeter', tenantId: '<tenant Id>', testSetName: 'jmeter', metricsRecordUrl: "${env.BUILD_URL}"])
         }
      }
   }
}

Invoke the plugin using a Rest call

When using a REST call to invoke the plugin, it must be a POST method and include the location of the HCL Accelerate quality data endpoint.

The following samples shows a REST call that you can copy and update as necessary. Key points about the code snippet:

  • The URL points to the HCL Accelerate quality data endpoint. Update with the server location for your installation of HCL Accelerate.
  • The BODY of the call is a multipart/form data. It includes information about the payload.

METHOD: POST 
URL: https://<url_urbancodevelocity_server>/reporting-consumer/metrics 
BODY (multipart/form-data):
 {
  payload: <payload_json_object_string> // See below for schema format
 testArtifact: <jmeter_xml_file>
 }

Invoke the plugin using Curl


curl --request POST \
  --url https:///reporting-consumer/metrics \
  --form 'payload={
    "tenant_id": "5ade13625558f2c6688d15ce",
    "application": {
    "name": "My Application"
  },
  "record": {
    "pluginType": "jmeter",
    "dataFormat": "jmeterXML"
  }
}

Payload schema

The following shows the schema for the payload. Replace the angle brackets with your values for the parameters.


{
  "tenant_id": "<tenant_id>",    // required Tenant ID
  "metricName": "<metric_name>", // optional: name for recurring test set
  "application": {
    "name": "<application_name>"  //Name of application
  },
  "record": {
    "recordName": "<record_name>", // optional: Name for this record
    "executionDate": 1547983466015, // optional: UNIX Epoch
    "pluginType": "jmeter",
    "dataFormat": "jmeterXML",  // jmeter xml
    "metricsRecordUrl": "<Jenkins_build_url>" // optional: To link the Jenkins build with test results
  },
  "build": {  // Optional: One of the following fields must be included 
    "buildId": "<build_id>",
    "jobExternalId": "<external_job_id>",
    "url": "<build_url>",
  },
  "commitId": "<commit_id>",  // optional
  "pullRequestId": "<pullrequest_id>", // optional
  "environment": "<environment_name>" // optional
}

ucv-ext-jmeter:1.0.62.tar

Uploaded: 12-Jun-2024 06:53

ucv-ext-jmeter:1.0.56.tar

Uploaded: 27-May-2022 04:24

Pull Command

docker pull hclcr.io/accelerate/ucv-ext-jmeter:1.0.56
 

Release Notes

  • reduce vulnerabilities

ucv-ext-jmeter:1.0.55.tar

Uploaded: 24-May-2021 11:58

Pull Command

docker pull hclcr.io/accelerate/ucv-ext-jmeter:1.0.55
 

Release Notes

  • Removed IBM related keywords

ucv-ext-jmeter:1.0.38.tar

Uploaded: 08-Feb-2021 07:37

Pull Command

docker pull hclcr.io/accelerate/ucv-ext-jmeter:1.0.38
 

Release Notes

  • Plugin name update

Related Plugins