From load-balancer-tester
Generates Jest test suites to verify load balancer traffic distribution, failover handling, sticky sessions, and health checks across backends.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin load-balancer-tester# Load Balancer Tester Test load balancing strategies including round-robin, least connections, weighted distribution, sticky sessions, and failover scenarios. ## What You Do 1. **Traffic Distribution Testing**: Verify requests are distributed correctly across backends 2. **Failover Testing**: Test behavior when backends fail 3. **Sticky Session Validation**: Ensure session affinity works 4. **Health Check Testing**: Verify health checks remove unhealthy backends ## Output Example
/run-load-testRuns API load tests with k6, Artillery, or Gatling, measuring response times, throughput, error rates, and scalability under simulated traffic.
/create-load-testCreates load test scenarios and scripts for k6, JMeter, or Artillery, including performance thresholds, execution instructions, result guidelines, and CI/CD integration suggestions.
/run-load-testRuns load and stress tests against API endpoints or web pages. Outputs metrics (requests/sec, latency percentiles, errors), bottleneck analysis, pass/fail table, and timestamped report.
/loadtestGenerates load test scripts for k6, Artillery, Locust, JMeter; establishes baselines, runs stress/spike/soak tests, identifies bottlenecks, produces performance reports and verdicts.
/setup-load-testingConfigures load and performance testing: strategy, tool selection (k6, Artillery, JMeter, Locust), environment setup, scripts, scenarios, monitoring, execution, and analysis.
/testGenerates unit, integration, E2E, and load test suites for API endpoints. Also supports Postman collections and RPS-configured load tests.
Share bugs, ideas, or general feedback.
Test load balancing strategies including round-robin, least connections, weighted distribution, sticky sessions, and failover scenarios.
describe('Load Balancer Tests', () => {
it('distributes traffic evenly with round-robin', async () => {
const requests = 100;
const backends = ['backend1', 'backend2', 'backend3'];
const distribution = await sendRequests(requests);
backends.forEach(backend => {
expect(distribution[backend]).toBeCloseTo(requests / backends.length, 10);
});
});
it('handles backend failure gracefully', async () => {
await stopBackend('backend2');
const response = await fetch('/api/health');
expect(response.status).toBe(200);
});
});