AutoQA is an autonomous software testing platform that accepts a source-code repository and a feature specification, launches the application in an isolated environment, generates and executes end-to-end tests, detects failures, collects visual & diagnostic evidence, and produces actionable bug reports.
-
Repository Ingestion & Safe Extraction
- Upload any web application source code as a
.ziparchive. - Guarded by Zip Slip protection, directory traversal mitigation, and disk quota enforcement.
- Automatically detects framework (React, Next.js, Vite, Vue, Angular, Express, Node, etc.), package manager (
npm,yarn,pnpm), and recommended startup scripts.
- Upload any web application source code as a
-
Feature Specification Parsing & Test Plan Generation
- Ingests markdown feature specifications (
# Feature: ...,## Scenario: ...,- Open /,- Enter ...,- Click ...,- Expected: ...). - Translates human-readable test steps into typed Playwright browser actions (
NAVIGATE,CLICK,FILL,SELECT,ASSERT_TEXT,ASSERT_VISIBLE). - Categorizes scenarios (Positive, Negative, Boundary) with confidence and priority ratings.
- Human-in-the-loop scenario review and approval workflow.
- Ingests markdown feature specifications (
-
Autonomous Execution & Environment Management
- Provisions an isolated child process running the target application server.
- Performs proactive HTTP health checks (
/healthor/) with configurable startup timeouts. - Dispatches headless Playwright browser workers with viewport management, console error capture, and network monitoring.
-
Real-time Telemetry & Evidence-backed Bug Reports
- Live execution progress stream via Server-Sent Events (SSE).
- Step-by-step trace showing action status, execution latency, and full-resolution screenshot captures.
- Automatic defect identification when DOM assertions fail or unhandled client-side exceptions occur.
- Generates actionable Bug Finding reports including:
- Failure severity (
CRITICAL,HIGH,MEDIUM,LOW) and category. - Side-by-side Expected vs Actual behavior.
- Reproducible step sequence.
- Captured evidence screenshot preview.
- Console error logs and failed network request traces.
- Failure severity (
┌────────────────────────────────────────┐
│ React Frontend │
│ (Dashboard, Test Plan, Telemetry) │
└───────────────────▲────────────────────┘
│ REST & SSE
▼
┌────────────────────────────────────────┐
│ Spring Boot Backend API │
│ - JWT Auth & Project Management │
│ - Repo Analysis & Zip Decompression │
│ - Feature Parsing & Plan Generator │
│ - Run Orchestration & SSE Broadcaster │
└───────▲────────────────────────▲───────┘
│ │
PostgreSQL │ │ Poll & Report
▼ ▼
┌───────────────┐ ┌───────────────────────┐
│ PostgreSQL │ │ Playwright Worker │
│ Persistence │ │ (Node TypeScript) │
└───────────────┘ └───────────┬───────────┘
│ Drives Headless Browser
▼
┌───────────────────────┐
│ Target Demo App │
│ (Isolated Sandbox) │
└───────────────────────┘
- Docker & Docker Compose
- Java 17+ & Maven
- Node.js 18+ & npm
docker-compose up -d postgrescd backend
mvn spring-boot:runBackend runs on http://localhost:8080 (API documentation at http://localhost:8080/swagger-ui.html).
cd worker
npm install
npx playwright install chromium
npm run devWorker starts and continuously polls the backend for pending test execution jobs.
cd frontend
npm install
npm run devFrontend runs on http://localhost:5173.
A pre-packaged demo app with working and broken features is included in demo-app/.
- Open
http://localhost:5173. - Click "Sign In with Demo Account" (or register a new user).
- On the Dashboard, click "Launch Demo Fixture".
- The system automatically creates a project, configures the environment, and uploads
features.md. - Review the parsed scenarios:
- Successful login (Positive)
- Invalid credentials error (Negative)
- Add a new task (Positive)
- Toggle task completion (Positive)
- Apply valid discount coupon (Positive)
- Apply promotional discount code (Broken feature that triggers client exception and assertion failure!)
- Click "Trigger Test Run" and watch the live telemetry stream!
- Once finished, inspect the discovered defect report with screenshot evidence and root-cause diagnostic.