Menu
Scroll for more
This is documentation for the next version of Grafana k6 documentation. For the latest stable release, go to the latest version.
Open source
selectOption(selector, values[, options])
Warning
Use locator-based
locator.selectOption()instead.
Selects one or more options which match the values from a <select> element.
| Parameter | Type | Default | Description |
|---|---|---|---|
| selector | string | '' | A selector to search for an element. If there are multiple elements satisfying the selector, the first will be used. |
| values | string or string[] or object | '' | If the select has the multiple attribute, all matching options are selected, otherwise only the first option matching one of the passed options is selected. Object can be made up of keys with value, label or index. |
| options | object | null | |
| options.force | boolean | false | Setting this to true will bypass the actionability checks (visible, stable, enabled). |
| options.noWaitAfter | boolean | false | If set to true and a navigation occurs from performing this action, it will not wait for it to complete. |
| options.strict | boolean | false | When true, the call requires selector to resolve to a single element. If given selector resolves to more than one element, the call throws an exception. |
| options.timeout | number | 30000 | Maximum time in milliseconds. Pass 0 to disable the timeout. Default is overridden by the setDefaultTimeout option on
BrowserContext or
Page. |
Returns
| Type | Description |
|---|---|
Promise<string[]> | A Promise that fulfills with the list of the selected options. |
Example
JavaScript
JavaScript
import { browser } from 'k6/browser';
export const options = {
scenarios: {
browser: {
executor: 'shared-iterations',
options: {
browser: {
type: 'chromium',
},
},
},
},
};
export default async function () {
const page = await browser.newPage();
await page.goto('https://test.k6.io/browser.php');
await page.selectOption('#numbers-options', 'three');
}Was this page helpful?
Related resources from Grafana Labs
Additional helpful documentation, links, and articles:
Video

Performance testing and observability in Grafana Cloud
Optimize user experiences with Grafana Cloud. Learn real-time insights, performance testing with k6, and continuous validation with Synthetic Monitoring.
Events

User-centered observability: load testing, real user monitoring, and synthetics
Learn how to use load testing, synthetic monitoring, and real user monitoring (RUM) to understand end users' experience of your apps. Watch on demand.