feat: migrate E2E tests from Cypress to Playwright#18
Merged
robertguss merged 7 commits intomainfrom Jun 17, 2025
Merged
Conversation
- Install Playwright test framework and browsers - Create Playwright directory structure (tests/, fixtures/, helpers/) - Add Playwright configuration files - Add Playwright scripts to package.json - Copy test fixtures from Cypress - Update .gitignore for Playwright artifacts
- Install @clerk/testing package for Clerk integration - Create authentication helper with Clerk testing support - Create payment helper for Stripe Checkout interactions - Create document helper for file upload and processing - Create database helper for test data management - Add global setup for Clerk testing environment - Create test fixtures for common functionality - Add example test demonstrating helper usage - Update Playwright config with global setup
- Migrate setup verification tests - Create subscription test index with common setup - Migrate upgrade flow tests (Free to Pro, Pro to Business) - Migrate downgrade flow tests (Business to Pro, cancellations) - Migrate payment failure tests (declined cards, 3DS, network errors) - Migrate subscription lifecycle tests (renewals, credits, notifications) - Update test fixtures to include helper references - Maintain full test coverage and scenarios from Cypress
- Add network interception helper for API mocking and monitoring - Add visual testing helper with screenshot comparison and accessibility - Add performance testing helper with metrics and benchmarking - Add trace analysis helper for enhanced debugging - Create advanced features demo test showcasing all capabilities - Add custom reporter with HTML and JSON output - Create GitHub Actions workflow with parallel execution - Update Playwright config to use custom reporter Advanced features include: - Visual regression testing with responsive design checks - Performance monitoring with budget assertions - Network mocking and failure simulation - Enhanced tracing with custom events - Accessibility testing and color contrast checks - Memory leak detection - API performance profiling - Flakiness detection - Custom test reporting with Slack integration
- Remove Cypress dependencies from package.json - Remove Cypress scripts from package.json - Delete Cypress directory and all related files - Remove temporary Playwright config files - Update .gitignore to remove Cypress entries - Create comprehensive E2E testing documentation - Create Cypress to Playwright migration guide - Update CLAUDE.md with Playwright testing info - Clean up debug test files Documentation includes: - Complete E2E testing guide with examples - Migration guide with syntax comparisons - Best practices and troubleshooting - CI/CD setup instructions
- Rename global-setup.ts to global.setup.ts per Clerk docs - Update playwright.config.ts to use correct filename - Update documentation to reflect correct filename - Add setup helper scripts for easier configuration
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR completes the migration of our E2E test suite from Cypress to Playwright, providing enhanced testing capabilities and better developer experience.
Key Changes
🔄 Migration
✨ New Features
📁 Structure
🚀 Benefits
Testing
Run the new test suite:
Documentation
docs/e2e-testing.mddocs/cypress-to-playwright-migration.mdCLAUDE.mdwith new test commandsBreaking Changes
pw:prefix instead ofcy:🤖 Generated with Claude Code
Co-Authored-By: Claude noreply@anthropic.com