Level 5 · Dynamic UI
Elements that appear over time
Where 90 % of flaky tests are born. Practise smart waits, retries and idempotent locators.
#
Dynamic elements
alphabeta
tipWait for the new chip to appear before asserting.
#
AJAX
tipTrigger the fetch and wait for `[data-testid=ajax-response]`.
#
Loading state
tipButton is `disabled` while loading — assert both.
#
Infinite scroll
- Item 1
- Item 2
- Item 3
- Item 4
- Item 5
- Item 6
- Item 7
- Item 8
- Item 9
- Item 10
- Item 11
- Item 12
- Item 13
- Item 14
- Item 15
- Item 16
- Item 17
- Item 18
- Item 19
- Item 20
loading more…
rows: 20
tipScroll to the bottom to load 10 more.
#
Conditional fields
tipExtra fields only appear based on the role choice.
#
Dynamic table
| ID ▲ | Name | Users | Updated | |
|---|---|---|---|---|
| 1 | Selenium | 4,820 | 2026-02-01 | |
| 2 | Playwright | 3,200 | 2026-02-05 | |
| 3 | Cypress | 2,900 | 2026-01-28 | |
| 4 | k6 | 1,750 | 2026-02-04 |
tipSort by any column, filter, and delete rows.