Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

POC: Migrate Cypress to Playwright for Initial Evaluation #8670

Closed
nihal467 opened this issue Sep 30, 2024 · 3 comments
Closed

POC: Migrate Cypress to Playwright for Initial Evaluation #8670

nihal467 opened this issue Sep 30, 2024 · 3 comments
Assignees
Labels
question Further information is requested

Comments

@nihal467
Copy link
Member

Features to be evaluated

  • Faster execution time compared to existing cypress
  • Auto-waiting mechanism
  • Mobile emulation support in test
  • Integrate with BrowserStack to check cloud-based testing
  • Multiple tab test support
  • Support Third-party reporting tools eg: Allure
@nihal467 nihal467 added this to Care Sep 30, 2024
@github-project-automation github-project-automation bot moved this to Triage in Care Sep 30, 2024
@nihal467 nihal467 moved this from Triage to Up Next in Care Sep 30, 2024
@nihal467 nihal467 self-assigned this Sep 30, 2024
@nihal467 nihal467 moved this from Up Next to In Progress in Care Oct 1, 2024
@nihal467 nihal467 moved this from In Progress to Up Next in Care Oct 1, 2024
@nihal467 nihal467 moved this from Up Next to In Progress in Care Oct 1, 2024
@bodhish
Copy link
Member

bodhish commented Oct 2, 2024

What are we missing with Cypress?, also why not use Jest?

@bodhish bodhish added the question Further information is requested label Oct 2, 2024
@nihal467
Copy link
Member Author

nihal467 commented Oct 3, 2024

Jest

  • Cypress lacks auto-waiting for delayed API responses; Playwright handles this automatically, reducing flaky tests.
  • Cypress 13.0+ discontinued third-party integrations for test coverage report generation
  • Cypress runs tests in one browser at a time; Playwright supports in-built multi-browser parallel testing.
  • Cypress is slower compared to Playwright.

Note: I am still working on the POC to understand if it's worth doing the migration

  • Jest isn't ideal for E2E testing and lacks a head UI, making debugging slower with only console logs and breakpoints.

@nihal467
Copy link
Member Author

nihal467 commented Oct 6, 2024

Closing the POC of Playwright migration because of the following reasons:

  • Flaky tests are still occurring even after using the await functionality.
  • We cannot freeze a particular step in the test video replay to understand which APIs were called during a specific action.
  • Migrating all the files, even with a specifically configured chatbot, can be energy- and time-consuming, which doesn’t provide real value as debugging the code might take time.
  • For integrating BrowserStack and commenting on each URL PR preview, we need to run separate GitHub actions and maintain all configurations ourselves, whereas Cypress offers single-click cloud integration, which is easier.

@nihal467 nihal467 closed this as completed Oct 6, 2024
@github-project-automation github-project-automation bot moved this from In Progress to Done in Care Oct 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants