Practice Tables & Forms Select Box Variants
5 variants
Form practice · Combobox variants

Select box variants practice

Five custom-built combobox variants — single, multi, creatable, grouped, and async. DOM classes intentionally mirror the popular react-select conventions (tta-rs__control, tta-rs__menu, tta-rs__option) so your locators transfer to real production widgets.

① Single — searchable

Type to filter

Click to open. Type to filter the list. Click an option to set a single value.

Pick a Playwright runner…
Playwright
Cypress
WebdriverIO
Selenium
TestCafe (deprecated)
Puppeteer
id=rs-single data-testid=rs-single · rs-single-input · rs-single-menu class=tta-rs__control · tta-rs__option

② Multi — chips with remove

Multiple values

Pick multiple options. Each becomes a removable chip with its own X button.

Pick automation tools…
Playwright
Pytest
JUnit
Mocha
Jest
Cucumber
TestNG
data-testid=rs-multi · rs-multi-input chip=tta-rs__multi-value remove=tta-rs__multi-value__remove

③ Creatable multi — type and Enter

Add new options

Type a tag that doesn't exist, press Enter, and a new chip is created on the fly.

Add skill tags…
api-testing
performance
accessibility
security
visual-regression
data-testid=rs-creatable · rs-creatable-input create=press Enter

④ Grouped — categorised options

Groups

Options are split into labelled groups. Practise reaching an option inside a specific group heading.

Pick a deployment target…
Cloud
AWS
GCP
Azure
Edge
Cloudflare Workers
Vercel Edge
Fastly
Self-hosted
On-prem
Bare metal
data-testid=rs-grouped group=tta-rs__group · data-group=Cloud / Edge / Self-hosted

⑤ Async — fetched on type

600ms latency

Type a city name. Results load after a simulated 600ms network call. Practise page.waitForResponse patterns or just await a visible option.

Type to search cities…
Type at least 2 characters…
data-testid=rs-async · rs-async-input · rs-async-menu state=loading / no-results / results
No selection yet — interact with the variants above.