press(selector, key[, options])
警告
请改用基于 Locator 的
locator.press()。
聚焦元素,然后使用 keyboard.down(key) 和 keyboard.up(key)。
key 值的超集可以在这里找到。
还支持以下修饰键快捷方式:Shift、Control、Alt、Meta、ShiftLeft。
按住 Shift 将输入与 key 对应的大写文本。
如果 key 是单个字符,它区分大小写,因此 a 和 A 的值将分别生成不同的文本。
也支持诸如 key: "Control+o" 或 key: "Control+Shift+T" 的快捷方式。当与修饰键一起指定时,修饰键会一直按住,直到按下后续键。
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| selector | string | '' | 用于查找元素的 Selector。如果有多个元素满足 Selector,将使用第一个。 |
| key | string | '' | 要按下的键名或要生成的字符,例如 ArrowLeft 或 a。键值的超集可以在这里找到。 |
| options | object | null | |
| options.delay | number | 0 | keydown 和 keyup 之间等待的毫秒数。 |
| options.noWaitAfter | boolean | false | 如果设置为 true 且执行此操作导致导航发生,则不会等待其完成。 |
| options.strict | boolean | false | 当为 true 时,调用要求 selector 解析为单个元素。如果给定的 selector 解析为多个元素,调用将抛出异常。 |
| options.timeout | number | 30000 | 最大时间(毫秒)。传入 0 禁用超时。默认值会被 BrowserContext 或 Page 上的 setDefaultTimeout 选项覆盖。 |
返回值
| 类型 | 描述 |
|---|---|
Promise<void> | press 操作完成时 Fulfilled 的 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.press('#text1', 'Tab');
}

