PW-Tests Wiki
| Key | Value |
|---|
| Status | Active |
| Owner | QA Automation |
| Updated | 2026-03-26 |
| Scope | Main Confluence landing page for the PW-Tests system |
PW-Tests is the shared Playwright platform for Czech News Center websites. It is not one test suite. It is a layered monitoring and release-safety system that checks six live sites, publishes alerts to Slack, pushes telemetry to OpenSearch and Grafana, and keeps a growing history of recurring failures so the team can tell the difference between a real regression, a flaky run, and something already fixed.
What The System Covers
| Area | What It Covers Today |
|---|
| Core site health | Smoke, Shadow, PDT, E2E, User-Flows |
| Mobile | Chrome and Safari, with @smoke, @regression, and @deep tiers |
| Content validation | Registry-driven Content Tests across 120 entries and 231 site slots |
| Visual checks | Structural screenshot comparisons for homepage, header, and footer |
| Monitoring | Consent, selector health, robots.txt, sitemap health, URL crawling, Grafana visual checks |
| Reporting | Slack run alerts, weekly and monthly reports, recovery replies, humanized failure investigation threads |
| Observability | EventLogger, OpenSearch, Grafana 2.0 dashboards, observability verification scripts |
| AI-assisted workflows | Healer, incident store, historical failure priors, cause assessment, visual fact-checking |
Current Operating Snapshot
The numbers below reflect the current March 2026 operating snapshot used across the repo and runbooks.
| Suite | Current State | Notes |
|---|
| Smoke | 12/12 passing | Fast health signal before anything else |
| PDT | 30/30 passing | Post-deploy gate; Blesk logo and cross-site nav fixes restored full pass rate |
| Shadow | 6/6 sites passing | Reliability-first continuous monitoring |
| E2E | 71/76 passing | Daily journey coverage |
| User-Flows | 30/34 passing | Four skips are by design |
| Mobile | 9 @smoke, 8 @regression, 6 @deep per project | PR-safe tiering plus nightly depth |
| Visual | 18 structural checks | Baseline-dependent Linux screenshot suite |
| Content | 6/6 sites passing | 120 registry entries, about 85% average existence pass rate, Blesk at 100% |
What Changed Recently
The system has moved a long way from basic Slack alerts and raw Playwright output. The most important upgrades now live in day-to-day operations:
- failure notifications are more human and more useful, with calm headlines and verdict-first investigation threads
- known incidents are matched against a git-tracked incident store instead of being treated as brand-new every time
- recovery replies can close the loop in Slack when a failure stops repeating
- Grafana 2.0 dashboards are generated as code and validated automatically
- observability can be checked by script, not just by opening dashboards in a browser
- the visual suite was intentionally reduced to 18 structural checks so it stays practical on fast-changing news sites
- content testing is now a proper product area with its own registry, handlers, history, and Confluence pages
How To Use This Wiki
| If You Need To... | Start Here |
|---|
| Get the repo running locally | Getting Started |
| Understand how the platform is wired together | Architecture Overview |
| See what each test suite is for | Test Types |
| Find the right command | CLI Reference |
| Check env vars, thresholds, and site config | Configuration Guide |
| Understand failure labels and routing | Failure Categories |
| Work with Slack, Grafana, OpenSearch, or Confluence publishing | Integrations |
| Trace what gets logged and where it goes | Logging System |
| Understand monitors, schedules, and background checks | Monitoring |
| Understand alerts, summaries, and reports | Reporting |
| Work on healing, incident matching, or AI-assisted workflows | AI Processing |
| Review screenshots with AI after failures or deploys | Visual Fact-Checker |
| Understand the telemetry stack, Grafana dashboards, and OpenSearch | Observability |
| Add a new site, suite, or integration | Extending the System |
| Unblock yourself when something is failing | Troubleshooting |
Documentation Map
Core Pages
Operations Pages
| Page | Why It Exists |
|---|
| Test Types | Purpose, depth, and schedules of every suite |
| Failure Categories | Common failure shapes and how they should be interpreted |
| Monitoring | Proactive checks outside the main suites |
| Reporting | Slack alerts, reports, recovery replies, report consumers |
Advanced Pages
| Page | Why It Exists |
|---|
| AI Processing | Healing pipeline, incident intelligence, and operator workflows |
| Visual Fact-Checker | AI screenshot review using Claude Vision for failures and post-deploy verification |
| Observability | OpenSearch, Grafana, Prometheus, Alertmanager — stack setup and operations |
| Integrations | Slack, Grafana, OpenSearch, GitLab, Confluence |
| Logging System | EventLogger, schemas, records, retention, artifacts |
| Troubleshooting | The practical “what do I do now?” page |
| Extending the System | How to add new sites, suites, handlers, and integrations safely |
Key Links
| Tool | Link | Why People Use It |
|---|
| Grafana | PW-Tests dashboards | Status, Investigate, Trends, alert triage |
| GitLab | pw-tests-beta | Pipelines, schedules, artifacts, merge requests |
| Slack | #qa-alerts and #qa-reports | Run alerts, investigation threads, weekly summaries |
| Confluence parent page | Playwright Tests | Published wiki home |
Covered Sites
| Site | Domain | Consent | Notes |
|---|
| Blesk | www.blesk.cz | CPEX | Main mass-market news site |
| Auto | www.auto.cz | CPEX | Automotive site with premium flows |
| E15 | www.e15.cz | Didomi | Business site with premium surfaces |
| Reflex | www.reflex.cz | Didomi | Magazine-style editorial layout |
| iSport | isport.blesk.cz | CPEX | Sports site with cross-domain edge cases |
| Opinio | opinio.cz | CPEX | Different navigation model; no desktop hamburger |
Confluence Notes
This source markdown is written for Confluence publishing, not for a GitHub README experience.
- keep pages readable for people first
- avoid heavy code blocks unless they are truly necessary
- prefer tables, short sections, and expand blocks for long detail
- use the wiki pages as the long-term operating reference, not just a dump of commands
All PW-Tests wiki child pages publish under the Playwright Tests parent page in Confluence. Use the scripts in .confluence/ rather than creating pages manually, so links, diagrams, and formatting stay consistent.