LST-001 recommended load-testing-setup

Load testing tool configured

You can't do load testing without a tool. Modern options like k6, Artillery, or Locust make it easy to script realistic traffic patterns and measure system behavior.

Question to ask

"When was your last load test?"

Pass criteria

  • Load testing tool configured with scripts in repo
  • OR scripts managed externally but documented (k6 Cloud, Grafana Cloud)
  • OR explicit reason load testing isn't needed (internal tool, low traffic)

Fail criteria

  • No load testing tool configured
  • "We should do that" but never have
  • Tool installed but no scripts written

Verification guide

Severity: Recommended

You can't do load testing without a tool. Modern options like k6, Artillery, or Locust make it easy to script realistic traffic patterns and measure system behavior.

Check automatically:

  1. Look for load testing tools and scripts:
# Look for k6 scripts
find . -name "*.js" -path "*k6*" -o -name "k6*.js" 2>/dev/null | grep -v node_modules

# Look for Artillery configs
find . -name "artillery*.yml" -o -name "artillery*.yaml" -o -name "artillery*.json" 2>/dev/null | grep -v node_modules

# Look for Locust files
find . -name "locustfile.py" -o -name "*locust*.py" 2>/dev/null | grep -v node_modules

# Look for Gatling simulations
find . -name "*.scala" -path "*gatling*" 2>/dev/null | grep -v node_modules

# Look for JMeter test plans
find . -name "*.jmx" 2>/dev/null | grep -v node_modules

# Check package.json for load testing deps
grep -E "k6|artillery|autocannon|loadtest|vegeta" package.json 2>/dev/null

# Check for load test directories
ls -la loadtest/ load-test/ tests/load/ tests/performance/ k6/ artillery/ 2>/dev/null

Ask user:

  • "What tool do you use for load testing?"
  • "Are load test scripts checked into the repo or managed elsewhere (k6 Cloud, etc.)?"

Cross-reference with:

  • LST-002 (baselines need load testing to establish)
  • LST-003 (testing before releases requires a tool)
  • LST-004 (CI smoke tests use the same tool)

Pass criteria:

  • Load testing tool configured with scripts in repo
  • OR scripts managed externally but documented (e.g., k6 Cloud, Grafana Cloud)
  • OR explicit reason load testing isn't needed (internal tool, low traffic, side project)

Fail criteria:

  • No load testing tool configured
  • "We should do that" but never have
  • Tool installed but no scripts written

Evidence to capture:

  • Load testing tool in use
  • Location of load test scripts
  • Whether scripts cover key endpoints/flows

Section

36. Load & Stress Testing

Operations & Incident Management