Keyboard
注意
此 API 正在开发中。以下部分功能可能表现异常。
Keyboard
提供与虚拟键盘交互的方式。
方法 | 描述 |
---|---|
down(key) | 分派一个 keydown 事件。 |
up(key) | 分派一个 keyup 事件。 |
press(key[, options]) | 分派一个 keydown 事件后紧跟一个 keyup 事件。 |
type(text[, options]) | 对文本中的每个字符分派 keydown 、keypress 或 input ,以及 keyup 事件。 |
insertText(text) | 仅分派一个 input 事件。 |
示例
import { browser } from 'k6/browser';
export const options = {
scenarios: {
ui: {
executor: 'shared-iterations',
options: {
browser: {
type: 'chromium',
},
},
},
}
}
export default async function () {
const page = await browser.newPage();
await page.goto('https://test.k6.io/my_messages.php', {
waitUntil: 'networkidle'
});
const login = page.locator('input[name="login"]');
await login.click();
await page.keyboard.type("admin");
const password = page.locator('input[name="password"]');
await password.click();
await page.keyboard.type("123");
await Promise.all([
page.keyboard.press('Enter'), // submit
page.waitForNavigation(),
]);
await page.close();
}