Skip to content

dev: add Playwright as a testing tool #2589

@mastercactapus

Description

@mastercactapus

What problem would you like to solve? Please describe:

  • Flaky Cypress selector chains
  • Inability to test popup links & separate servers/hosts (e.g., oauth flows)
  • Cypress upgrades frequently break tests & require manual updates
  • Layout of tests & locations isn't documented
  • Cypress test code needs to be built/bundled to run in the browser
  • Inability to use things like async/await

Describe the solution you'd like:

  • Move smoketests to tests/smoketest
  • Create tests/integration for playwright tests
  • Add test-integration and start-integration make targets (prod-mode only)
  • Add EMAIL contact method as first test
  • Add test-integration target to build-all script in CI

Describe alternatives you've considered:
The current setup works for what it can do, and there are workarounds like setting up reverse proxy routes to get around some of Cypress's limitations; but it all adds complexity, time, and maintenance cost.

Playwright was evaluated and has a preferable setup, better integration with existing IDEs, and more flexibility to test multiple tabs/windows & concurrently run tests.

Additional context:
Playwright

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions