This repository presents a unified automated testing platform. We use Docker Compose to fully isolate the testing environments, ensuring stable and reproducible test runs for various components (E2E, API, and Integration).
💫 If you like this project, please consider giving it a star!
It helps others find it and keeps me motivated
- Docker Desktop installed and running.
- The
docker composecommand is available (standard in modern Docker Desktop installations).
The most efficient way to run the End-to-End tests and automatically generate the HTML report is via a single command. This command handles the container build, dependency installation, test execution, and report opening.
Prerequisite: Ensure Docker Desktop is running.
docker compose up --build -d; docker compose exec -w /work/playwright_ts playwright_ts sh -c "npm install && npx playwright test --reporter=html"💡 Tip: To open the HTML report after tests, you can run:
# macOS
open ./playwright_ts/playwright-report/index.html# Windows
start ./playwright_ts/playwright-report/index.htmlYou can run the full Playwright + Docker + Allure CI/CD pipeline directly from Docker Hub —
no cloning, no setup, just one command 🚀
docker run --rm -it mybono/qa-portfolio:latestTo stop and remove all containers, networks, and volumes created by docker compose after the tests are complete and free up system resources:
docker compose downThe project uses docker compose to orchestrate several key services:
| Service Name | Technology | Role |
|---|---|---|
| SDK | TypeScript | Shared library for Playwright TypeScript projects (playwright_ts). |
playwright_ts |
Playwright / TypeScript | Environment for running End-to-End tests using Node.js. |
Our repository uses GitHub Actions to enforce quality and safety checks on all pull requests.
- Trigger: Runs on
pull_requestevents targeting themainbranch (opened,synchronize,reopened). - Purpose: Executes a full CI workflow for every PR before merge.
-
🚀 pr-checkmate A set of automated checks for Pull Requests
- ESLint checks
- Dependency change detection
- Prettier auto-formatting
- Spellcheck (
cspell) - NPM audit
- Scans for secrets using
-
✅ pr-validation
- Checks PR size (number of files and lines changed)
- Generates PR metrics summary for quick review
-
📝 update-changelog
- Automatically updates
CHANGELOG.mdbased on conventional commits - Determines semantic version bump (patch/minor/major) according to commit types
- Automatically updates
-
🤖 auto-merge
- Automatically merges the PR once all checks pass and changelog is updated
