CesiumGS / CesiumGS/cesium

Inconsistent snapshots in `test-e2e-release` due to partially loaded scenes

Open
#12,281 3 comments 0 reactions 0 assignees View on GitHub
category - packaging & tooling test failure type - cleanup
Dominant language
JavaScript
Stars
15.8k
Forks
3.9k
Avg merge
4d 6h
Merged PRs (30d)
34

Description

### What happened?

In the release process running the Playwright tests with `npm run test-e2e-release` produces false positive errors because elements in the scene are at slightly different states in the loading process.

Examples:
![Screenshot from 2024-11-01 13-54-22](https://github.com/user-attachments/assets/08ccbd9e-544e-4b73-9af4-38b5f5a847ad)
![Screenshot from 2024-11-01 13-54-52](https://github.com/user-attachments/assets/e985b569-e87a-4a62-87f2-412a0d714dc4)
![Screenshot from 2024-11-01 14-03-58](https://github.com/user-attachments/assets/43381af9-b3b3-4d10-8d82-9d26fbb80a05)

It appears the scene has not changed but snapshots were taken at slightly different states in the loading process.

More consistent criteria for taking snapshots could also reduce false positive errors in other cases, eg. animation, particle systems

![Screenshot from 2024-11-01 14-04-50](https://github.com/user-attachments/assets/66c773fc-c221-4723-8de5-4aa5a7d746fc)
![Screenshot from 2024-11-01 14-05-17](https://github.com/user-attachments/assets/e2a2b5a8-b832-438b-99b1-dc4f3be5569a)

Contributor guide

Open the contributing guide

Research direction

Start by running the Playwright suite with `npm run test-e2e-release` and inspect how its snapshots are taken while scenes load. Compare the reported inconsistent results, including animation and particle-system cases, and define a consistent snapshot criterion that eliminates false positives; done means the release tests produce stable snapshots.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, playwright
Domain
testing
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.