This project is an early-stage load testing system designed to automatically discover real user flows using a browser engine and replay them as concurrent load.
⚠️ Project Status
The backend core is under active development.
The frontend UI and database are not implemented yet and are documented as planned components.
The long-term goal is to move beyond synthetic load testing by using real navigation and form interaction flows as the foundation for realistic traffic generation.
- Core backend services in Golang
- Test run lifecycle and orchestration logic
- Browser-based flow detection (Playwright – WIP)
- Load generation engine (worker-based concurrency – WIP)
- Frontend dashboard (React + Tailwind)
- Persistent storage (PostgreSQL)
- Metrics aggregation and reporting
- Authentication and multi-user support
This section describes the intended runtime behavior once all components are implemented.
- User enters a target URL and desired user count
- Control API creates a
test_run - Test Orchestrator starts execution
- Browser Engine:
- Crawls application pages
- Detects navigation and form flows
- Records executable user steps
- Load Engine:
- Replays detected flows
- Generates concurrent traffic
- Metrics are aggregated
- Results are stored
- Frontend polls and visualizes results
The diagram below represents the intended system architecture, not the current deployment state.
Developer │ ▼ Web Dashboard (React) [PLANNED] │ POST /run-test ▼ Control API (Go) [IN PROGRESS] │ ▼ Test Orchestrator (Go) [IN PROGRESS] │ ├──▶ Browser Engine [WIP] │ (Playwright) │ ├──▶ Load Engine [WIP] │ (Go workers) │ └──▶ Metrics Collector [PLANNED] │ ▼ PostgreSQL [PLANNED]
Tech: React + Tailwind
- URL input
- User count selection
- Start test trigger
- Test history and results view
Tech: Golang (REST)
- Create and manage test runs
- Fetch test state and results
- Trigger orchestrator execution
- Authentication (planned)
Tech: Golang (Core Logic)
- Central state machine
- Test run lifecycle management
- Timeout and retry handling
- Resource and concurrency limits
Tech: Playwright
- Crawl application pages
- Detect links and forms
- Record reproducible user flows
Tech: Golang Workers
- Replay detected flows
- Generate concurrent HTTP traffic
- Support ramp-up strategies
- Latency tracking
- Error and failure aggregation
- Event-based reporting
Tech: PostgreSQL
test_runsstepsmetrics_summary
This repository currently focuses on backend architecture and execution logic.
UI, persistence, and analytics will be added incrementally as the system stabilizes.
Contributions and architectural discussions are welcome.