Skip to main content
hitspec includes a built-in stress testing engine. Use the same .http files you write for functional tests to run load tests — no separate tool needed.

Quick Start

Two Modes

Rate Mode (default)

Sends requests at a fixed rate (requests per second):

Virtual User Mode

Simulates concurrent users, each sending requests sequentially with optional think time:

Ramp-Up

Gradually increase load instead of starting at full capacity:
This takes 30 seconds to ramp from 0 to 200 req/s, then sustains 200 req/s for the remaining 4m30s.

Thresholds

Set pass/fail criteria based on performance metrics:
If any threshold is exceeded, hitspec exits with code 1. Available threshold metrics:
  • p50 — 50th percentile latency
  • p95 — 95th percentile latency
  • p99 — 99th percentile latency
  • errors — Error rate percentage

Stress Profiles

Define reusable profiles in hitspec.yaml:
Use a profile:
CLI flags override profile values.

Multiple Files

Stress test across multiple files:
Or an entire directory:

Output

Real-time Progress

By default, hitspec shows a live progress bar with current RPS, latency, and error count. Disable with --no-progress.

JSON Output

Metrics Export

Export to Prometheus, DataDog, or JSON for dashboards:
See Metrics Export for details.

CI/CD Integration

The exit code indicates whether thresholds passed:
  • 0 — all thresholds met
  • 1 — one or more thresholds exceeded
Last modified on February 10, 2026