Skip to content
Back to skills

Performance Tester

ASecurity

Design and run performance tests to identify bottlenecks, validate SLOs, and measure system capacity. Covers load tests, stress tests, and spike tests.

  • 3 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 6, 2026
ai-agentsjavascriptgojavabashsqlnodetestingapidatabaseperformance

Works with

  • cursor
  • cli
  • api

Security analysis

A100/100

Scanned September 6, 2026

npx -y skills add AtulPurohit/Antigravity-Awesome-Skills --skill performance-tester --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Performance Tester?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Performance Tester
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/atulpurohit-performance-tester/badge)](https://www.skillsdirectory.com/skills/atulpurohit-performance-tester)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: performance-tester
description: "Design and run performance tests to identify bottlenecks, validate SLOs, and measure system capacity. Covers load tests, stress tests, and spike tests."
category: testing
tags: [performance, load-testing, k6, jmeter, benchmarking]
complexity: advanced
risk: low
compatibility: [claude-code, antigravity, gemini-cli, cursor, copilot, codex-cli, autohand, kiro]
source: antigravity-official
version: "1.0.0"
date_added: "2026-07-10"
last_updated: "2026-07-10"
---

# Performance Tester

## Purpose
Identify performance bottlenecks and validate that systems meet SLOs under realistic and extreme load conditions.

## Performance Test Types
| Type | Goal | When |
|---|---|---|
| Load test | Validate normal traffic | Before release |
| Stress test | Find breaking point | Capacity planning |
| Spike test | Handle sudden traffic | Event preparation |
| Soak test | Find memory leaks | Long-running validation |
| Smoke test | Basic sanity check | After deploy |

## k6 Test Scripts
```javascript
import http from 'k6/http';
import { check, sleep } from 'k6';
import { Rate, Trend } from 'k6/metrics';

const errorRate = new Rate('errors');
const apiDuration = new Trend('api_duration');

export const options = {
  scenarios: {
    // Ramping load test
    load_test: {
      executor: 'ramping-vus',
      startVUs: 0,
      stages: [
        { duration: '2m', target: 100 },   // Ramp up
        { duration: '5m', target: 100 },   // Sustain
        { duration: '2m', target: 200 },   // Increase
        { duration: '5m', target: 200 },   // Sustain
        { duration: '2m', target: 0 },     // Ramp down
      ],
    },
  },
  thresholds: {
    http_req_duration: ['p(95)<500', 'p(99)<1000'],  // SLO: P95 < 500ms
    errors: ['rate<0.01'],                             // Error rate < 1%
    http_req_failed: ['rate<0.01'],
  },
};

export default function() {
  const res = http.get('https://api.example.com/posts', {
    headers: { Authorization: `Bearer ${__ENV.API_TOKEN}` },
  });

  const success = check(res, {
    'status is 200': (r) => r.status === 200,
    'response time < 500ms': (r) => r.timings.duration < 500,
    'has data': (r) => r.json().data !== undefined,
  });

  errorRate.add(!success);
  apiDuration.add(res.timings.duration);

  sleep(1);
}
```

## Identifying Bottlenecks
```bash
# Profile running Node.js app
node --prof app.js

# Analyze flame graph
npx clinic flame -- node server.js

# Database slow query log
SET GLOBAL slow_query_log = 1;
SET GLOBAL long_query_time = 0.1;

# Profile PostgreSQL queries
EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) SELECT ...;
```

## Outputs
1. k6 test scripts for all scenarios
2. SLO definition (P95, P99 targets)
3. Performance baseline report
4. Bottleneck analysis
5. Optimization recommendations
6. Continuous performance monitoring setup

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…