Skip to content

Add JTL Excel Smart Report Generator plugin#778

Merged
undera merged 7 commits intoundera:masterfrom
rishavsawarn:jtl-xls-plugin
Mar 10, 2026
Merged

Add JTL Excel Smart Report Generator plugin#778
undera merged 7 commits intoundera:masterfrom
rishavsawarn:jtl-xls-plugin

Conversation

@rishavsawarn
Copy link
Copy Markdown
Contributor

@rishavsawarn rishavsawarn commented Mar 10, 2026

Hello,

I would like to propose adding a new plugin to the JMeter Plugins Manager.

Plugin Name: JTL Excel Smart Report Generator
Plugin Type: Listener

Features:

  • Generate Excel reports from JTL files
  • Transaction-wise performance metrics
  • SLA threshold validation (P90 highlighting)
  • Formatted Excel output
  • Progress bar and log console

In my experience working on various small and mid-sized applications, teams often require basic XLS performance reports containing response time metrics and SLA deviations. Preparing such reports typically involves significant manual effort, including processing JTL files and formatting the results for reporting.

This plugin aims to reduce that manual effort by directly converting JTL result files into a structured Excel performance report.

GitHub Repository:
https://github.com/rishavsawarn/jmeter-jtl-xls-report-plugin

Release (JAR Download):
https://github.com/rishavsawarn/jmeter-jtl-xls-report-plugin/releases/download/v1.0/jtl-xls-plugin-1.0.jar

Plugin Metadata:
https://github.com/rishavsawarn/jmeter-jtl-xls-report-plugin/blob/main/metadata/plugin.json

Compatibility:
Tested with Apache JMeter 5.6.3 and Java 17

I have tested the plugin locally and it is working as expected. This is the initial version of the plugin. In future releases, I plan to enhance it further, Automatic reporting and possible integration with APM tools for improved performance reporting and analysis.

I will also add more detailed documentation, descriptions, and screenshots in upcoming releases.

Please review the plugin and consider adding it to the JMeter Plugins Manager. Find attached Screenshot of UI and Generated Report-

Screenshot1
Screenshot2

Thank you.

"id": "jmeter-jtl-xls-plugin",
"name": "JTL Excel Smart Report Generator",
"description": "Generate Excel SLA reports from JMeter JTL files",
"site": "https://github.com/rishavsawarn/jmeter-jtl-xls-report-plugin",
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's no such property "site". Please refer to plugin descriptor schema: https://github.com/undera/jmeter-plugins/blob/master/repo_schema.json

Copy link
Copy Markdown
Owner

@undera undera left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CI would not pass, please fix descriptor

@rishavsawarn
Copy link
Copy Markdown
Contributor Author

Thank you for the feedback. I have removed the unsupported "site" property from the plugin.json also fixed Downloadurl CI validation should now pass.

Copy link
Copy Markdown
Owner

@undera undera left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your PR contains two undesired files. Also your plugin descriptor is misplaced - all third-party plugins are to be listed inside various.json file, not under plugins.

@rishavsawarn
Copy link
Copy Markdown
Contributor Author

I have removed the misplaced plugin descriptor and added the plugin entry to various.json as suggested.

Copy link
Copy Markdown
Owner

@undera undera left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now take that JSONSchema file and run agains various.json - it will fail, right? Come back once it will pass.

@rishavsawarn
Copy link
Copy Markdown
Contributor Author

I’ve updated the plugin descriptor according to the schema requirements after validating it against the JSON schema. I have pushed the fixes to the branch.

@codecov
Copy link
Copy Markdown

codecov bot commented Mar 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 69.06%. Comparing base (09d23ae) to head (6dd08b6).
⚠️ Report is 35 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff              @@
##             master     #778      +/-   ##
============================================
+ Coverage     68.90%   69.06%   +0.16%     
- Complexity     2629     2653      +24     
============================================
  Files           230      233       +3     
  Lines         15965    16061      +96     
  Branches       1638     1650      +12     
============================================
+ Hits          11000    11092      +92     
+ Misses         4146     4139       -7     
- Partials        819      830      +11     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@undera
Copy link
Copy Markdown
Owner

undera commented Mar 10, 2026

Well done!

@undera undera merged commit dfe1416 into undera:master Mar 10, 2026
3 checks passed
sagaraggarwal86 pushed a commit to sagaraggarwal86/jmeter-plugins that referenced this pull request Mar 12, 2026
* Add JTL Excel Smart Report Generator plugin

* Remove unsupported 'site' property from plugin.json

* Fix downloadUrl to use GitHub release asset

* Remove misplaced plugin descriptor

* Ignore macOS DS_Store files

* Add JTL Excel Smart Report Generator plugin to various.json

* Fix plugin descriptor according to repo schema
undera pushed a commit that referenced this pull request Mar 12, 2026
* Add Configurable Aggregate Report plugin along with bug fixes

* Update various.json

* Update various.json

* Update various.json (#777)

looks like libs{} in json broke plugin manager. so i have removed it from my change

2026-03-06 13:38:46,884 ERROR o.a.j.JMeter: Uncaught exception in thread Thread[AWT-EventQueue-0,6,main]
net.sf.json.JSONException: JSONObject["libs"] is not a JSONObject.
	at net.sf.json.JSONObject.getJSONObject(JSONObject.java:2058) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.Plugin.getLibs(Plugin.java:361) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.DependencyResolver.resolveDeleteLibs(DependencyResolver.java:231) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.DependencyResolver.resolve(DependencyResolver.java:37) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.DependencyResolver.<init>(DependencyResolver.java:28) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.PluginManager.getChangesAsText(PluginManager.java:233) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.PluginManagerDialog$1.notify(PluginManagerDialog.java:64) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.PluginManagerDialog.<init>(PluginManagerDialog.java:114) ~[jmeter-plugins-manager-1.11.jar:?]
	at org.jmeterplugins.repository.PluginManagerMenuItem.actionPerformed(PluginManagerMenuItem.java:101) ~[jmeter-plugins-manager-1.11.jar:?]
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) ~[?:?]
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) ~[?:?]
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) ~[?:?]
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) ~[?:?]
	at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:374) ~[?:?]

* Add JTL Excel Smart Report Generator plugin (#778)

* Add JTL Excel Smart Report Generator plugin

* Remove unsupported 'site' property from plugin.json

* Fix downloadUrl to use GitHub release asset

* Remove misplaced plugin descriptor

* Ignore macOS DS_Store files

* Add JTL Excel Smart Report Generator plugin to various.json

* Fix plugin descriptor according to repo schema

* Add Prism - tab-style interface plugin for Apache JMeter (#779)

* Add: Feather Wand - JMeter AI Agent

* Add: Feather Wand - JMeter AI Agent

* Update Feather Wand

* Bump FeatherWand - Claude Code integration

* Update various.json

* Update various.json

* Update various.json

* Add: Prism

* Add Configurable Aggregate Report plugin

* Update various.json

---------

Co-authored-by: Rishav <rishavsawarn@gmail.com>
Co-authored-by: NaveenKumar Namachivayam ⚡ <catch.nkn@gmail.com>
@rishavsawarn rishavsawarn deleted the jtl-xls-plugin branch March 19, 2026 02:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants