Skip to content

Playwright POC - TestCafe to Playwright migration#33007

Draft
aleksei-semikozov wants to merge 12 commits intoDevExpress:26_1from
aleksei-semikozov:playwright-poc
Draft

Playwright POC - TestCafe to Playwright migration#33007
aleksei-semikozov wants to merge 12 commits intoDevExpress:26_1from
aleksei-semikozov:playwright-poc

Conversation

@aleksei-semikozov
Copy link
Contributor

Summary

POC for migrating TestCafe E2E tests to Playwright.

  • 560 test files converted from TestCafe to Playwright
  • Playwright config with CI-matching Chrome flags for deterministic rendering
  • Playwright helper infrastructure (createWidget, testScreenshot, themeUtils)
  • CI workflow for parallel Playwright test execution
  • Scheduler/month tests verified working (15/15 pass locally)
  • Regression detection verified (Playwright catches visual changes)

Key findings from POC:

  • Screenshot dimensions identical between TestCafe/Playwright (1184×635)
  • Pixel diff on same OS: 0% (deterministic with Chrome flags)
  • Cross-platform diff (macOS vs Linux): 0.3-2.5% (font rendering only)
  • maxDiffPixelRatio: 0.03 sufficient for cross-platform tolerance

What needs verification on CI:

  1. Do Playwright screenshots match TestCafe baselines on self-hosted runner?
  2. Stability over multiple runs (workflow supports repeat_count input)
  3. Performance comparison vs TestCafe

Notes:

  • Many converted files may have syntax errors (auto-converted, ~80% accuracy)
  • Scheduler/common/month/ tests are fully working and verified
  • Other components need manual fixes
  • CI workflow may not trigger from feature branch (requires workflow on main)

- Add Playwright config with CI-matching Chrome flags
- Add Playwright test helpers (createWidget, testScreenshot, themeUtils)
- Convert 560 TestCafe test files to Playwright format
- Add CI workflow for parallel Playwright execution
- Scheduler/month tests verified working (15/15 pass)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant