Skip to main content
skill CX Codex

151-java-performance-jmeter — Claude Code skill: JMeter load tests

Sets up JMeter load testing in Java projects by creating a run-jmeter.sh script and standard test directories.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add jabrena/plinth --skill 151-java-performance-jmeter -a claude-code
Open on GitHub

What 151-java-performance-jmeter does

The skill first checks jmeter --version. If JMeter is not on your PATH, the agent stops immediately. It then scaffolds src/test/resources/jmeter/ for load-test.jmx and target/ for output artifacts.

Next, it copies run-jmeter.sh into the project root and runs chmod +x run-jmeter.sh. The template stays unmodified. The script accepts flags for threads (-t), loops (-l), ramp-up (-r), and GUI mode (-g). You can also override settings via JMETER_THREADS, JMETER_LOOPS, or JMETER_RAMP_UP.

Without JMeter in your PATH, the workflow fails immediately. Install JMeter beforehand.

What it helps with

  • Add a JMeter test execution script to a Java project root
  • Create the src/test/resources/jmeter directory structure for test plans
  • Configure load test parameters via CLI flags or environment variables
  • Validate local JMeter availability before setting up tests

Example prompts for the agent

  • Set up JMeter performance testing for this Java project
  • Add run-jmeter.sh script and test plan folders for load testing
  • Configure JMeter load testing support with environment variable overrides

How to install 151-java-performance-jmeter

1Skills CLI (Vercel)

npx skills add jabrena/plinth --skill 151-java-performance-jmeter -a claude-code

2Manually: put the files in place

~/.claude/skills/151-java-performance-jmeter/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/151-java-performance-jmeter/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about 151-java-performance-jmeter

How to install 151-java-performance-jmeter in Claude Code?

Run npx skills add jabrena/plinth --skill 151-java-performance-jmeter -a claude-code in your terminal.

What does 151-java-performance-jmeter do?

It validates your local JMeter setup, copies run-jmeter.sh to the root folder, makes it executable, and creates test directories.

What prerequisites are needed before using this skill?

JMeter must be installed and accessible via jmeter --version on your system PATH.

Source text

SKILL.md · Apache-2.0
---
name: 151-java-performance-jmeter
description: Use when you need to set up JMeter performance testing for a Java project — including creating the run-jmeter.sh script from the exact template, configuring load tests with loops, threads, and ramp-up, or running performance tests from the project root with custom or default settings. This should trigger for requests such as Improve the code with JMeter performance testing; Apply JMeter performance testing; Refactor the code with JMeter performance testing; Add JMeter support; Create a JMeter test plan for a Java service. Part of Plinth Toolkit
license: Apache-2.0
metadata:
  author: Juan Antonio Breña Moral
  version: 0.19.0
---
# Run performance tests based on JMeter

Provide a complete JMeter performance testing solution by creating the run-jmeter.sh script from the exact template, making it executable, and configuring the project structure for load testing. Supports custom loops, threads, ramp-up, and environment variable overrides.

**What is covered in this Skill?**

- Create run-jmeter.sh in project root from the exact template (no modifications)
- Project structure: src/test/resources/jmeter/load-test.jmx, target/ for results
- Script options: -l (loops), -t (threads), -r (ramp-up), -g (GUI), -h (help)
- Environment variables: JMETER_LOOPS, JMETER_THREADS, JMETER_RAMP_UP
- Verify JMeter is installed and available before proceeding

**Scope:** Copy the script template verbatim. Do not modify, interpret, or enhance the template content.

## Constraints

JMeter must be installed and available in PATH. If not available, show a message and exit. Use only the exact template for the run-jmeter.sh script.

- **PREREQUISITE**: Verify JMeter is installed and accessible via `jmeter --version` before creating the script
- **CRITICAL**: Copy the run-jmeter.sh template exactly — do not modify, interpret, or enhance
- **PERMISSION**: Make the script executable with `chmod +x run-jmeter.sh`
- **BEFORE APPLYING**: Read the reference for the exact script template and usage instructions
- **EDGE CASE**: If request scope is ambiguous, stop and ask a clarifying question before applying changes
- **EDGE CASE**: If required inputs, files, or tooling are missing, report what is missing and ask whether to proceed with setup guidance

## When to use this skill

- Improve the code with JMeter performance testing
- Apply JMeter performance testing
- Refactor the code with JMeter performance testing
- Add JMeter support
- Create a JMeter test plan for a Java service

## Workflow

1. **Verify JMeter prerequisite**

Check `jmeter --version` and stop with guidance if JMeter is not installed or not available in PATH.

2. **Read JMeter reference template**

Read `references/151-java-performance-jmeter.md` and use the `run-jmeter.sh` template exactly as provided.

3. **Create script and project structure**

Create `run-jmeter.sh` in project root, ensure required JMeter directories/files exist, and apply executable permission with `chmod +x`.

4. **Explain usage and environment overrides**

Document CLI options (`-l`, `-t`, `-r`, `-g`, `-h`) and environment variable overrides (`JMETER_LOOPS`, `JMETER_THREADS`, `JMETER_RAMP_UP`).

## Reference

For detailed guidance, examples, and constraints, see [references/151-java-performance-jmeter.md](references/151-java-performance-jmeter.md).

© Juan Antonio Breña Moral · Apache-2.0 · jabrena/plinth

Similar skills

Everything for Testing and QA →

From the same set40

128-java-generics A skill that reviews and refactors Java generics: raw types, unchecked casts, PECS wildcards. Handy when a generic API starts leaking type safety. CX Codex +1 370installs 170-java-documentation A step-based skill that walks an agent through writing README.md, package-info.java and Javadoc for a Maven Java project. Useful when the code exists but the docs don't. CX Codex +1 359installs 322-frameworks-spring-boot-testing-integration-tests A skill for writing and reviewing Spring Boot 4.0.x integration tests: Testcontainers, persistence slices, HTTP assertions. CX Codex +1 357installs 030-architecture-adr-general Interactive skill that interviews developers to capture architecture decisions for Java projects in MADR format. Useful when choosing databases or framework stacks. CX Codex +1 351installs 313-frameworks-spring-db-migrations-flyway A skill for adding and reviewing Flyway migrations in Spring Boot: Maven dependencies, db/migration scripts, spring.flyway.* settings and migration ordering. CX Codex +1 352installs 162-java-profiling-analyze This skill reads the Java profiling data you already collected — flamegraphs, JFR, GC logs, thread dumps — and sorts the problems it finds by priority. CX Codex +1 350installs 113-java-maven-documentation Generates a DEVELOPER.md guide for Maven projects. It parses pom.xml structure to list plugin goals and build profiles. CX Codex +1 348installs 014-agile-user-story Walks the agent through a template questionnaire and writes a Markdown user story. Useful when feature requirements need splitting. CX Codex +1 339installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor