dispatchEvent(selector, type, eventInit[, options])
警告
请改用基于 Locator 的
locator.dispatchEvent(type, eventInit[, options])
。
分发 HTML DOM 事件类型,例如 'click'
。
参数 | 类型 | 默认值 | 描述 |
---|---|---|---|
selector | string | '' | 用于搜索元素的 Selector。如果多个元素满足 Selector,将使用第一个元素。 |
type | string | '' | DOM 事件类型,例如 'click' 。 |
eventInit | object | null | 可选的事件特定属性。详见 eventInit 了解更多。 |
options | object | null | |
options.strict | boolean | false | 当 true 为 true 时,要求 Selector 解析为单个元素。如果给定的 Selector 解析到多个元素,调用将抛出异常。 |
options.timeout | number | 30000 | 最大超时时间(毫秒)。传入 0 可禁用超时。默认值会被 BrowserContext 或 Page 上的 setDefaultTimeout 选项覆盖。 |
eventInit
由于 eventInit
是事件特定的,请参考事件文档了解初始属性列表
返回值
类型 | 描述 |
---|---|
Promise<void> | 事件分发完成时兑现的 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.dispatchEvent('#counter-button', 'click');
}