Waits & Dynamics Practice Challenges
Practice dynamic loading, conditional controls, streaming feeds, session timeouts and stale elements — every wait strategy, no fixed sleeps.
8 challenges
- Transporter Room · Dynamic Loading
- Paddock Controls · Dynamic Controls
- Squad Bench · Add/Remove Elements
- Pizza Order Toasts · Notification Messages
- The Bounty Board · Dynamic Content
- Endless Deals · Infinite Scroll
- Pit Wall Telemetry · Streaming Feed
- The Revolving Door · Stale Elements
Frequently asked questions
How do I replace fixed sleeps with real waits?
Wait for a condition the page exposes: an element becoming visible, a control becoming enabled, a row being appended, or a terminal marker such as the streaming feed's checkered flag. Every timer-driven page here accepts ?delay=…, so a realistic wait still runs fast in CI.
What is the difference between visibility, presence and staleness?
Presence is "in the DOM", visibility is "rendered and interactable", and staleness is what happens when a node you already hold is replaced rather than updated. Dynamic Loading shows the first two side by side; Stale Elements and Dynamic Controls show the third.
Are these pages deterministic?
All but two, which say so loudly on the page: Notification Messages re-rolls success or failure on every click, and Dynamic Content re-rolls its three cards on every visit. Both accept ?force= or ?seed= so a CI run can pin the outcome.
Other categories
Updated
Fun UI Playground — all challenges, bug hunts, getting started, glossary, about.