一键导入
qa-jmeter-writer
Generate JMeter performance test plans in XML/JMX format with thread groups, samplers, listeners, assertions, and CI-ready configuration.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generate JMeter performance test plans in XML/JMX format with thread groups, samplers, listeners, assertions, and CI-ready configuration.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | qa-jmeter-writer |
| description | Generate JMeter performance test plans in XML/JMX format with thread groups, samplers, listeners, assertions, and CI-ready configuration. |
| output_dir | tests/performance |
Write JMeter test plans (.jmx) from performance test specifications. Transform structured performance requirements (from qa-plan-creator performance plans, qa-nfr-analyst NFR specs) into executable JMeter XML test plans with thread groups, samplers, listeners, assertions, and CI-ready configuration.
| Feature | Description |
|---|---|
| Thread Groups | Users, ramp-up, loops, duration for load modeling |
| HTTP Request Sampler | URL, method, body, headers, path |
| JDBC/JMS Samplers | Database and messaging protocol support |
| Listeners | Aggregate Report, Summary Report, Graph Results, View Results Tree |
| Assertions | Response Assertion, Duration Assertion, Size Assertion, JSON Assertion |
| CSV Data Set Config | Parameterization from CSV files |
| Extractors | Regular Expression Extractor, JSON Extractor |
| Timers | Constant, Uniform Random, Gaussian for think time |
| Pre/Post Processors | JSR223 (Groovy), BeanShell for correlation |
| Pattern | Usage |
|---|---|
| Thread Group | num_threads, ramp_time, loops, duration for load modeling |
| HTTP Request | Domain, path, method, body, headers |
| Response Assertion | Status code, response text, response code |
| Duration Assertion | Max response time (ms) |
| JSON Assertion | JSONPath, expected value |
| CSV Data Set Config | Filename, variable names, delimiter |
| Regular Expression Extractor | Regex, template, match number, variable |
| JSR223 PreProcessor | Groovy script for correlation |
<ThreadGroup guiclass="ThreadGroupGui" testclass="ThreadGroup" testname="Load Users" enabled="true">
<stringProp name="ThreadGroup.num_threads">50</stringProp>
<stringProp name="ThreadGroup.ramp_time">60</stringProp>
<elementProp name="ThreadGroup.main_controller" elementType="LoopController">
<stringProp name="LoopController.loops">-1</stringProp>
<stringProp name="ThreadGroup.duration">300</stringProp>
</elementProp>
</ThreadGroup>
<HTTPSamplerProxy guiclass="HttpTestSampleGui" testclass="HTTPSamplerProxy" testname="GET /api/users" enabled="true">
<stringProp name="HTTPSampler.domain">api.example.com</stringProp>
<stringProp name="HTTPSampler.path">/api/users</stringProp>
<stringProp name="HTTPSampler.method">GET</stringProp>
<boolProp name="HTTPSampler.use_keepalive">true</boolProp>
</HTTPSamplerProxy>
<ResponseAssertion guiclass="AssertionGui" testclass="ResponseAssertion" testname="Status 200" enabled="true">
<collectionProp name="Assertion.test_strings">
<stringProp name="49586">200</stringProp>
</collectionProp>
<stringProp name="Assertion.custom_message"></stringProp>
<stringProp name="Assertion.test_field">Assertion.response_code</stringProp>
<boolProp name="Assertion.assume_success">false</boolProp>
</ResponseAssertion>
See references/patterns.md for thread groups, samplers, assertions, extractors, timers, controllers.
.jmx files in tests/, performance/, or jmeter/ per project conventionjmeter -n -t test.jmx -l results.jtl -e -o report/-n), JTL results (-l), HTML report (-e -o)| Option | Description |
|---|---|
-n | Non-GUI mode (headless) |
-t test.jmx | Test plan file |
-l results.jtl | Results file (JTL/CSV) |
-e | Generate HTML report after run |
-o report/ | Output directory for HTML report |
-Jprop=value | Override JMeter properties |
Can do (autonomous):
Cannot do (requires confirmation):
Will not do (out of scope):
jmeter -n -t test.jmx)references/patterns.md — Thread groups, samplers, assertions, extractors, timers, controllersreferences/config.md — CLI mode, properties, plugins, distributed testingreferences/best-practices.md — Non-GUI mode, parameterization, correlation, result analysis${__P()} or CSV for credentials| Symptom | Likely Cause | Fix |
|---|---|---|
| OutOfMemoryError in JMeter | Too many threads or listeners | Reduce threads; remove View Results Tree; increase JVM heap (-Xmx) |
| Assertions fail in CI | Different baseline or env | Align assertion thresholds; use ${__P()} for env-specific values |
| High error rate | Timeouts, 5xx, or wrong assertions | Increase timeout; fix assertion logic; verify endpoint |
| CSV not found | Relative path | Use absolute path or ${__BeanShell(import org.apache.jmeter.services.FileServer; FileServer.getFileServer().getBaseDir();)} |
| Correlation fails | Extractor order or regex | Ensure extractor runs before dependent sampler; verify regex |
| JMX invalid XML | Malformed elements | Validate XML; ensure proper closing tags; check JMeter version compatibility |
| Slow HTML report | Large JTL file | Use Aggregate Report listener; reduce sample logging; filter by label |
Master skill coordinating all QA skills through pipeline modes (full-cycle, docs-only, testcases-only, write-tests, report), formalized handoff chains, scheduler rules, and framework/language selection based on project context.
QA project memory with auto-update. Structured log of bugs, decisions, tests, regressions, environments. Automatically updated after every QA task. Archive system with searchable index for large projects. Trigger phrases (EN): "initialize memory", "init qa memory", "find known bug", "search memory", "show what was done", "check regressions", "memory status", "archive memory", "log a bug", "add decision", "memory summary", "what bugs do we know", "update memory", "show test log". Trigger phrases (UA): "ініціалізувати пам'ять", "знайти відомий баг", "пошук у пам'яті", "показати що було зроблено", "перевірити регресії", "статус пам'яті", "архівувати пам'ять", "залогувати баг", "додати рішення", "зведення пам'яті", "які баги відомі", "оновити пам'ять", "показати лог тестів", "що ми вирішили про", "які тестові середовища є".
Analyze OpenAPI/Swagger spec (JSON or YAML) against existing test files and generate an HTML coverage report with QA automation tasks. Use when user provides an OpenAPI spec file and wants to know test coverage status.
Generate accessibility tests for WCAG 2.2 compliance using axe-core, Pa11y, and Lighthouse with automated checks for ARIA patterns, keyboard navigation, color contrast, and screen reader support.
Manage and formalize API contracts from existing endpoints, swagger/JSON, network traffic, or developer interviews into OpenAPI specifications.
Autonomously explore live web applications using Playwright MCP to collect page structure, form fields, validation rules, API endpoints, and user flows for test case generation.