Improve Playwright test patterns in VariablePage (#63965) (#63979)
* Improve Playwright test patterns in VariablePage (#63965)
- Replace CSS :has-text() with locator.filter({ hasText }) in rowByKey
- Replace CSS attribute selector with getByRole('checkbox') in selectRow
- Replace page.waitForFunction() DOM queries with locator-based
waiting (Promise.race of noData text vs first table row)
- Replace CSS input[type='checkbox'] with getByRole('checkbox')
in selectAllCheckbox
Aligns with Playwright best practices per #63036.
* Revert checkbox selectors — Chakra hidden input incompatible with getByRole
getByRole('checkbox') resolves to Chakra UI's hidden <input> which
is not visible/stable, causing TimeoutError. Keep original CSS
selectors for checkbox interactions until Chakra components expose
proper accessible roles.
* Use expect().toBeVisible() with .or() combinator
Replace Promise.race + waitFor() with Playwright's built-in
.or() combinator for assertion-based waiting. Verified locally
with 5/5 pass.
---------
Co-authored-by: Jarek Potiuk <jarek@potiuk.com> I
Imgyu Kim committed
283ab813cf5a52d881a610cb776ad6a7aefe3bab
Parent: 63be7a6
Committed by GitHub <noreply@github.com>
on 3/26/2026, 12:29:35 PM