performance-testing · aj-geddes — Claude Code skill: load tests and benchmarks
A skill that walks your agent through designing load tests and benchmarks: response times, throughput, resource use.
npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a claude-codeWhat performance-testing does
The skill gives the agent a frame for performance work: load scenarios, percentile thresholds, before-and-after comparisons. It ships a short k6 example with ramp stages and thresholds like p(95)<500, plus reference guides under references/ covering k6 for API load testing, Apache JMeter, pytest-benchmark for Python, JMH for Java, database query performance and real-time monitoring.
It also spells out what to do and what to avoid. Test with realistic data volumes, watch resource utilization, use P95 and P99 instead of averages, warm up before measuring, run in a production-like environment. The don'ts are just as concrete: small datasets, memory leaks, N+1 queries, missing index analysis, happy-path-only tests.
The skill does not run anything by itself. You still need k6, JMeter, pytest-benchmark or JMH installed in the project, otherwise the reference examples stay text. And if you only exercise the happy path while ignoring network latency, the numbers you get back will mislead you — worth checking what you are actually measuring.
What it helps with
- compare API response times before and after an optimization
- find bottlenecks under concurrent load
- verify whether caching actually helps
- measure database throughput on realistic data volumes
- pick between two algorithm implementations using a benchmark
Example prompts for the agent
- write a k6 load test for the checkout endpoint with a p95 threshold of 500 ms
- benchmark two versions of the sort function with pytest-benchmark
- check the database queries for N+1 problems and suggest indexes
How to install performance-testing
1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a claude-code2Manually: put the files in place
~/.claude/skills/performance-testing/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/performance-testing/
1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a codex2Manually: put the files in place
.agents/skills/performance-testing/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a cursor2Manually: put the files in place
.cursor/skills/performance-testing/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install aj-geddes/useful-ai-prompts performance-testing2Manually: put the files in place
.github/skills/performance-testing/SKILL.md1Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a gemini-cli2Platform CLI
gemini skills install https://github.com/aj-geddes/useful-ai-prompts --path skills/performance-testingManually: put the files in place
.devin/skills/performance-testing/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about performance-testing
How do I install performance-testing in Claude?
Run npx skills add aj-geddes/useful-ai-prompts --skill performance-testing -a claude-code. The skill lands at ~/.claude/skills/performance-testing/SKILL.md.
What does the performance-testing skill do?
It guides the agent through designing and running performance tests: response times, throughput, resource utilization, scalability. Reference guides cover k6, JMeter, pytest-benchmark, JMH and database queries.
Which platforms support the skill?
Besides Claude it installs into Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode, each with its own install command.
Source text
SKILL.md · MIT
---
name: performance-testing
description: >
Design and execute performance tests to measure response times, throughput,
and resource utilization. Use for performance test, load test, JMeter, k6,
benchmark, latency testing, and scalability analysis.
---
# Performance Testing
## Table of Contents
- [Overview](#overview)
- [When to Use](#when-to-use)
- [Quick Start](#quick-start)
- [Reference Guides](#reference-guides)
- [Best Practices](#best-practices)
## Overview
Performance testing measures how systems behave under various load conditions, including response times, throughput, resource utilization, and scalability. It helps identify bottlenecks, validate performance requirements, and ensure systems can handle expected loads.
## When to Use
- Validating response time requirements
- Measuring API throughput and latency
- Testing database query performance
- Identifying performance bottlenecks
- Comparing algorithm efficiency
- Benchmarking before/after optimizations
- Validating caching effectiveness
- Testing concurrent user capacity
## Quick Start
Minimal working example:
```javascript
// load-test.js
import http from "k6/http";
import { check, sleep } from "k6";
import { Rate, Trend } from "k6/metrics";
// Custom metrics
const errorRate = new Rate("errors");
const orderDuration = new Trend("order_duration");
// Test configuration
export const options = {
stages: [
{ duration: "2m", target: 10 }, // Ramp up to 10 users
{ duration: "5m", target: 10 }, // Stay at 10 users
{ duration: "2m", target: 50 }, // Ramp up to 50 users
{ duration: "5m", target: 50 }, // Stay at 50 users
{ duration: "2m", target: 0 }, // Ramp down to 0
],
thresholds: {
http_req_duration: ["p(95)<500"], // 95% of requests under 500ms
http_req_failed: ["rate<0.01"], // Error rate under 1%
errors: ["rate<0.1"], // Custom error rate under 10%
},
};
// ... (see reference guides for full implementation)
```
## Reference Guides
Detailed implementations in the `references/` directory:
| Guide | Contents |
|---|---|
| [k6 for API Load Testing](references/k6-for-api-load-testing.md) | k6 for API Load Testing |
| [Apache JMeter](references/apache-jmeter.md) | Apache JMeter |
| [pytest-benchmark for Python](references/pytest-benchmark-for-python.md) | pytest-benchmark for Python |
| [JMH for Java Benchmarking](references/jmh-for-java-benchmarking.md) | JMH for Java Benchmarking |
| [Database Query Performance](references/database-query-performance.md) | Database Query Performance |
| [Real-Time Monitoring](references/real-time-monitoring.md) | Real-Time Monitoring |
## Best Practices
### ✅ DO
- Define clear performance requirements (SLAs)
- Test with realistic data volumes
- Monitor resource utilization
- Test caching effectiveness
- Use percentiles (P95, P99) over averages
- Warm up before measuring
- Run tests in production-like environment
- Identify and fix N+1 query problems
### ❌ DON'T
- Test only with small datasets
- Ignore memory leaks
- Test in unrealistic environments
- Focus only on average response times
- Skip database indexing analysis
- Test only happy paths
- Ignore network latency
- Compare without statistical significance
© aj-geddes · MIT · aj-geddes/useful-ai-prompts
Similar skills
Everything for Testing and QA →performance-testing by other authors comes first.