performance-testing
Load testing with k6/Artillery, response time thresholds, memory leak detection, N+1 query detection, and CI integration.
Profile →npx skills add vibeeval/vibecosystem --skill performance-testing --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Performance Testing ## k6 Script Patterns ### Basic scenario with stages ```javascript // k6 run load-test.js import http from 'k6/http' import { check, sleep } from 'k6' export const options = { stages: [ { duration: '30s', target: 10 }, // ramp up { duration: '1m', target: 50 }, // hold load { duration: '30s', target: 0 }, // ramp down ], thresholds: { http_req_duration: ['p(95)<200', 'p(99)<500'], http_req_failed: ['rate<0.01'], // < 1% error rate }, } export default function () { const res = http.get('https://api.example.com/users') check(res, { 'status is 200': (r) => r.status === 200, 'response time < 200ms': (r) => r.timings.duration < 200, }) sleep(1) } ``` ### POST with auth ```javascript export default function () { const payload = JSON.stringify({ email: 'test@example.com', password: 'secret' }) const headers = { 'Content-Type': 'application/json' } const res = http.post(`${BASE_URL}/auth/login`, payload, { headers }) const token = res.json('token') http.get(`${BASE_URL}/profile`, { headers: { Authorization: `Bearer ${token}` }, }) } ``` ## Load Test Types | Type | Duration | Target VU | Purpose | |------|----------|-----------|---------| | Smoke | 1 min | 1-5 | Verify
- k6 Script Patterns
- Basic scenario with stages
- POST with auth
- Load Test Types
- Threshold Definitions
- CI Integration (GitHub Actions + k6)
- Memory Leak Detection (Node.js)
- Heap snapshot approach
- Programmatic detection
- Common leak patterns to watch
- N+1 Query Detection
- pgstatstatements (PostgreSQL)
- Query logging (development)
- DataLoader pattern (N+1 fix)
Start with --inspect node --inspect --expose-gc server.js In Chrome DevTools → Memory → Take heap snapshot Run load, take another snapshot k6 run --out influxdb=http://localhost:8086/k6 load-test.js k6 run --out json=results-$(git rev-parse --short HEAD).json load-test.js
What does the performance-testing skill do?
Load testing with k6/Artillery, response time thresholds, memory leak detection, N+1 query detection, and CI integration.
How do I install it?
Run `npx skills add vibeeval/vibecosystem --skill performance-testing --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From vibeeval/vibecosystem, a repository with 521 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.