Why this is tricky

The first two widgets aren't native <select> elements — both are built from a button and a custom role="listbox", which is how most production design systems actually implement dropdowns. Locators built for native <option> elements won't find these. The third one flips that: it's a genuinely native <select multiple>, which needs the browser's own multi-select interaction (ctrl/cmd-click, or your tool's "select by visible text" API) rather than clicking list items.

  • CI/CD integration
  • Visual testing
  • API testing

Initial state.