You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Stabilize RNTester Maestro flows against app cold-start race
Summary:
The iOS RNTester Maestro suite is flaky because several flows assert the landing screen immediately after `launchApp`, with no wait. On a CI simulator the JS bundle hasn't rendered yet when the assertion fires, so flows fail with `Assertion is false: "Components" is visible` (e.g. `text`, `modal`) or fail downstream after entering through the shared launch helper (e.g. `pressable`). It is a race, not a deterministic failure — `flatlist`/`button` use the same pattern and pass on faster runs.
Replace the bare landing-screen `assertVisible` with `extendedWaitUntil` (30s) so the bundle has time to render:
- `helpers/launch-app-and-search.yml` (`Components`) — the shared entry path for `text`, `pressable`, `image`, and the new image smoke-test flows.
- `modal.yml`, `flatlist.yml`, `button.yml` (`Components`).
- `legacy-native-module.yml` (`APIs`).
`extendedWaitUntil` returns as soon as the element appears, so this adds no time on the happy path — only headroom on cold start.
This is the actual fix for the red iOS E2E; the earlier `spawnSync ETIMEDOUT` was the suite failing + retrying + occasionally overrunning the 10-minute per-attempt cap, not a simulator/driver-startup problem. No harness/setup changes.
Changelog: [Internal]
Differential Revision: D109742688
0 commit comments