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

Refactor Playwright build and auth steps into separate CI jobs so the shards do not repeat work #8912

Open
4 tasks
grahamlangford opened this issue Jul 23, 2024 · 2 comments

Comments

@grahamlangford
Copy link
Collaborator

grahamlangford commented Jul 23, 2024

Motivation

  • We introduced sharding to dramatically reduce the Playwright runtime but each shard has to run authentication
  • Running the setup authentication once in a separate step that the Playwright shards inherit would further reduce the time needed to run tests
  • Running the build once before all also would cut a lot of wasted time on each shard.

Acceptance Criteria

  • The GitHub Actions end-to-end-tests workflow first runs a separate build job, which is used in all subsequent playwright test runs.
  • The setup projects (i.e. chromeSetup and edgeSetup) run in a separate job before all other shards.
    • Uploads the resulting profiles to Github artifacts, which are then pulled in each shard job.
    • The final report should still include the setup tests status and we should still be able to view the playwright report and traces for it.

More details

https://github.com/pixiebrix/pixiebrix-extension/blob/68615326daa77c0a2e8cb885773ea1dc72edac92/.github/workflows/end-to-end-tests.yml

Use the --no-deps and --project cli options
https://playwright.dev/docs/test-cli

@grahamlangford
Copy link
Collaborator Author

@fungairino please add any additional context or acceptance criteria

@fungairino fungairino changed the title Refactor Playwright auth steps into separate CI step so the shards do not repeat setup Refactor Playwright build and auth steps into separate CI jobs so the shards do not repeat work Jul 23, 2024
Copy link

This issue will be closed in 7 days unless the stale label is removed, or a comment is added to the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant