Perf Migrator
Convert performance test scripts between JMeter, K6, and Gatling — bidirectional, all 6 conversion directions.
One-time payment – perpetual license
What's Included
Overview
Stop rewriting scripts by hand. Perf Migrator converts performance test scripts between JMeter, K6, and Gatling — bidirectionally, across all 6 conversion directions. What takes days of manual work, Perf Migrator does in seconds.
Locked into JMeter but want to try K6? Migrating from Gatling to JMeter for a new client? Just run one command.
Supported Conversions
| From | To | Command |
|---|---|---|
| JMeter (.jmx) | K6 (.js) | perf-migrator jmx2k6 test.jmx -o test.js |
| JMeter (.jmx) | Gatling (.scala) | perf-migrator jmx2gatling test.jmx -o Sim.scala |
| K6 (.js) | JMeter (.jmx) | perf-migrator k62jmx test.js -o test.jmx |
| K6 (.js) | Gatling (.scala) | perf-migrator k62gatling test.js -o Sim.scala |
| Gatling (.scala) | JMeter (.jmx) | perf-migrator gatling2jmx Sim.scala -o test.jmx |
| Gatling (.scala) | K6 (.js) | perf-migrator gatling2k6 Sim.scala -o test.js |
What Gets Converted
Perf Migrator doesn’t just translate syntax — it maps the full semantics of each tool’s test structure through an intermediate representation:
- HTTP requests — method, URL, headers, query parameters, request body (JSON, form, raw)
- Load profiles — virtual users, ramp-up time, duration, stages, iterations
- Assertions — status code, body contains, JSON path, XPath, response time
- Extractors — regex, JSON path, XPath, boundary, CSS selectors
- Data feeds — CSV datasets with variable mapping
- Think time — constant timers, Gaussian random timers, pauses
- Groups & transactions — logical grouping of requests
- Conditions — if controllers, conditional execution
- Authentication — Basic, Bearer token, API key
Pricing
| Feature | Single Direction |
Professional
Bidirectional
|
|---|---|---|
| CLI tool (Windows & Linux) | ✓ | ✓ |
| HTTP requests, headers, bodies | ✓ | ✓ |
| Assertions & extractors | ✓ | ✓ |
| CSV data feeds & load profiles | ✓ | ✓ |
| HTML reports & secrets scanning | ✓ | ✓ |
| Batch processing | ✓ | ✓ |
| Perpetual license | ✓ | ✓ |
| Conversion directions | 1 direction locked on first use |
All 6 directions JMeter ↔ K6 ↔ Gatling |
| Price |
£79
one-time
|
£149
one-time
|
| Buy Single | Buy Professional |
CLI Usage
# Convert a JMeter test plan to K6
perf-migrator jmx2k6 load-test.jmx -o load-test.js
# Convert with HTML report
perf-migrator jmx2k6 load-test.jmx -o load-test.js --html-report report.html
# Batch convert all JMX files in a directory
perf-migrator convert --from jmeter --to k6 "tests/*.jmx" --batch
# Convert Gatling to JMeter
perf-migrator gatling2jmx Simulation.scala -o test-plan.jmx
Use Cases
Migrating Teams
Your organisation standardised on K6 but has 200 JMeter scripts from the last 5 years? Convert them all in one batch:
perf-migrator convert --from jmeter --to k6 "legacy/*.jmx" --batch
Multi-Tool Teams
Different teams prefer different tools? Maintain scripts in one format and convert on demand:
perf-migrator jmx2k6 regression-suite.jmx -o regression-suite.js
perf-migrator jmx2gatling regression-suite.jmx -o RegressionSuite.scala
Evaluating Tools
Trying Gatling but need to keep your JMeter scripts as a fallback? Convert, evaluate, and convert back if needed.
Installation
Windows
- Download the ZIP from the download page
- Extract to a convenient location (e.g.
C:\Tools\) - Open Command Prompt or PowerShell
- Run:
perf-migrator --versionto verify - Set your license key:
set PERF_MIGRATOR_LICENSE=YOUR-KEY(or use--license YOUR-KEY)
Linux
- Download the ZIP from the download page
- Extract:
unzip perf-migrator-*.zip - Make executable:
chmod +x perf-migrator - Move to path:
sudo mv perf-migrator /usr/local/bin/ - Run:
perf-migrator --versionto verify - Set your license key:
export PERF_MIGRATOR_LICENSE=YOUR-KEY(or use--license YOUR-KEY)
Technical Details
- Binary size: ~4MB (native Rust binary — no runtime dependencies)
- Platforms: Linux x86_64, Windows x86_64 (macOS coming soon)
- Processing: All conversion runs locally — your scripts never leave your machine
- Output quality: Validated against 115 real-world scripts with 87% full success rate, 100% perf-lint zero errors
FAQ
What if my scripts use unsupported JMeter elements?
Perf Migrator will convert what it can and emit warnings for unsupported elements (like BeanShell scripts or JSR223 preprocessors). The output is always valid — unsupported elements are documented in the conversion report so you know exactly what needs manual attention.
Can I use it for multiple projects?
Yes. Your license covers unlimited personal or commercial use across as many projects as you need.
What’s the difference between Single Direction and Professional?
Single Direction locks to whichever conversion pair you use first (e.g. JMeter→K6). Professional gives you all 6 directions — convert freely between any combination of JMeter, K6, and Gatling.
Is my data safe?
Everything runs locally in a native binary. No data is sent anywhere. Your scripts stay on your machine.