This project demonstrates modern Software Quality Engineering and SDET practices across a full system stack.
It validates a realistic provisioning workflow across the UI, API, and database layers, with automation integrated into CI and test reporting.
Manual testing of multi-layer workflows is slow, error-prone, and difficult to scale.
This project shows how automation replaces high-risk manual testing by creating a repeatable quality gate for releases.
This project demonstrates how I apply Software Quality Engineering and SDET principles in modern systems:
- End-to-end validation across UI, API, and database layers
- Automation designed to replace high-risk manual testing
- Backend and data integrity verification beyond UI checks
- CI-integrated quality gates supporting release confidence
- Explicit failure-path and negative testing
These practices reflect the same quality engineering mindset used in enterprise environments, demonstrated here using modern web and API tooling.
Browser (Playwright Tests)
↓
Frontend Web App
↓
FastAPI Backend
↓
MySQL Database
↓
GitHub Actions CI + Allure Reports
| Layer | Tools |
|---|---|
| UI Automation | Playwright |
| API Testing | Python + FastAPI |
| Database Validation | MySQL |
| CI/CD | GitHub Actions |
| Reporting | Allure Reports |
| Languages | Python, JavaScript |
- End-to-end workflow validation
- Form validation and error handling
- Cross-browser automation
- Endpoint validation
- Data integrity checks
- Negative testing and failure paths
- Verify data persistence
- Validate workflow side effects
- Confirm system state after operations
Every push triggers automated validation:
- Install dependencies
- Launch backend service
- Run Playwright tests
- Generate Allure report
- Publish test results
This creates a release confidence gate for every change.
This project runs frontend + backend + database + end-to-end tests together.
Install before starting:
- Python 3.10+
- Node.js 18+
- MySQL 8+
- Git
Open MySQL and create the database:
CREATE DATABASE provisioning_lab;| Setting | Value |
|---|---|
| Host | localhost |
| Port | 3306 |
| User | root |
| Password | root |
| Database | provisioning_lab |
pip install -r requirements.txt
uvicorn backend.api:app --reloadcd web
npm install
npm run dev
Open UI:
http://localhost:5173npm install
npx playwright installnpx playwright testArtifacts generated:
playwright-report/
test-results/
allure-results/Playwright HTML Report
npx playwright show-report
Allure Report
npx allure serve allure-results
| Service | URL |
|---|---|
| FastAPI Swagger | http://127.0.0.1:8000/docs |
| Frontend UI | http://localhost:5173 |
| Playwright Report | Generated locally |
| Allure Report | Generated locally |