selectOption(selector, values[, options])
警告
建议改用基于 locator 的
locator.selectOption()
。
选择与 <select>
元素中值匹配的一个或多个选项。
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
selector | string | '' | 用于搜索元素的 selector。如果有多个元素满足 selector,将使用第一个。 |
values | string or string[] or object | '' | 如果 select 元素带有 multiple 属性,则选择所有匹配的选项,否则仅选择第一个与传递选项之一匹配的选项。Object 可以由带有 value、label 或 index 键的键值对组成。 |
options | object | null | |
options.force | boolean | false | 将其设置为 true 将绕过可操作性检查 (visible , stable , enabled )。 |
options.noWaitAfter | boolean | false | 如果设置为 true ,并且执行此操作导致导航发生,则不会等待其完成。 |
options.strict | boolean | false | 如果为 true ,则要求 selector 解析为一个单一元素。如果给定的 selector 解析到多个元素,则此调用会抛出异常。 |
options.timeout | number | 30000 | 最大超时时间,单位为毫秒。传递 0 可禁用超时。默认值会被 BrowserContext 或 Page 上的 setDefaultTimeout 选项覆盖。 |
返回值
类型 | 描述 |
---|---|
Promise<string[]> | 一个 Promise,它在完成后返回所选选项的列表。 |
示例
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');
}