A test passing on a laptop and failing in CI has at least two environments to explain. Start there, and save the original failure's screenshots and output before you rerun anything.
Go through these in order, since the first few account for a lot:
Is the test waiting for a meaningful application state, or merely assuming an operation has finished after a fixed delay? A wait for "Saved" to appear holds up on a slower machine. A two-second sleep might not.
Run the same test repeatedly in CI before you change anything. If it fails sometimes, you're probably looking at timing or shared data. If it always fails in CI and never locally, look for a configuration difference.
Zerocheck records the environment, the browser location and the YAML with each result, so you can open a local run and a CI run and compare them. The CLI can run on a development machine or a CI runner, while the hosted browser needs a URL it can reach. In all three, your instance makes the decisions and keeps the results, so a local browser changes where the browser runs and not the connection it needs.
For the setup itself, see how to run browser tests in GitHub Actions.
US$500 in credits at sign up, with a dedicated instance and hands-on onboarding.
Book a setup call