The Problem
What I Built
Architecture
The brain. Receives test execution requests, calculates optimal VM distribution, queues jobs, and monitors progress. Built with Node.js. Image Builder
Prepares Docker base images pre-configured for Playwright. Browser binaries baked in. Dependencies locked. Startup time minimized. VM Provisioner
Spins up Azure VMs on demand. Scales from 1 to 200 in minutes. Tears down automatically when tests complete. Pay only for what you use. Test Distributor
Splits test suites intelligently across available VMs. Balances load. Handles retries. Collects results in real-time. Results Aggregator
Consolidates results from all VMs into a single report. Pass/fail counts, execution times, failure screenshots, trace files.
The Stack
Containers: Docker, Kubernetes, Helm
Backend: Node.js microservices
Data: MongoDB for job state, Redis for queues
CI/CD: GitHub Actions
Framework: Playwright
Impact
7 hours saved per week on test execution.
Internal tool powering client service contracts.
Zero public access - competitive advantage kept in-house.
How It Worked
- Engineer triggers test run via API or CLI
- Orchestrator calculates VM count needed
- Provisioner spins up Azure VMs with base image
- Distributor assigns test files to each VM
- VMs execute Playwright tests in parallel
- Results stream back in real-time
- Aggregator compiles final report
- VMs terminate automatically
AI-Ready Architecture
Architecture supports AI-driven test prioritization - running high-risk tests first based on code change analysis. Smart Distribution
Test allocation algorithm optimized for parallel execution, with hooks for ML-based load prediction. Extensible for AI Test Generation
Modular design allows integration with AI-assisted test generation tools, enabling automated test creation from code changes.