apache / apache/jmeter

Feature Request: Support HTTP(S) Test Script Recorder in Headless/CLI Mode

Open
#6,464 0 comments 0 reactions 0 assignees View on GitHub
enhancement to-triage
Dominant language
Java
Stars
9.5k
Forks
2.3k
Avg merge
1d 22h
Merged PRs (30d)
5

Description

### Use case

Currently, JMeter's HTTP(S) Test Script Recorder requires a GUI to start, stop, and dynamically capture HTTP/HTTPS requests into a test plan. There’s no supported way to run the recorder in headless or command-line mode.

For users running JMeter on server VMs or in CI/CD pipelines without a desktop environment, this makes it impossible to record live traffic from automated scripts or applications (like pytest-based API calls) directly into a .jmx plan. The only options are recording locally on a GUI-enabled machine and then transferring the test plan, or manually building the plan — both of which introduce extra steps and operational overhead.

### Possible solution

It would be hugely helpful if JMeter could offer a way to:

- Start and stop the HTTP(S) Test Script Recorder proxy via CLI.
- Specify a test plan template or output file to dynamically capture recorded requests.
- Optionally generate the Root CA certificate via CLI and specify the location.
- Run the recorder without requiring a GUI, for headless environments.

This would unlock use cases like server-side recordings during automated test runs or in cloud-based environments.

### Possible workarounds

- Recording on a local GUI setup and copying the .jmx file — inconvenient for CI/CD.
- Manually creating test plans — tedious for complex APIs.
- Using remote GUI access (X11 forwarding, VNC, etc.) — adds setup overhead.

### JMeter Version

5.6.3

### Java Version

Java 24.0.1 2025-04-15

### OS Version

Sequioia 15.5

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.