Skip to main content
Cypress应用

Cypress.Keyboard

Keyboard API 允许你访问可用的 Keys 以配合 cy.press() 使用,或设置 .type() 命令执行的默认值。

语法

Cypress.Keyboard.Keys(key)
Cypress.Keyboard.defaults(options)

Keys 参数

key (String)

可用于 cy.press() 的按键。

支持的按键如下:

参考
Cypress.Keyboard.Keys.TAB"Tab"

defaults 参数

options (Object)

包含以下属性的对象:

选项默认值描述
keystrokeDelay10使用 .type() 输入时按键之间的延迟时间(毫秒)。设为 0 可移除延迟。必须为非负数。

示例

按下 Tab 键

cy.press(Cypress.Keyboard.Keys.TAB)
cy.get('input.second').should('have.focus')

通过增加按键延迟来减慢输入速度

Cypress.Keyboard.defaults({
keystrokeDelay: 20,
})

移除按键延迟

Cypress.Keyboard.defaults({
keystrokeDelay: 0,
})

注意事项

Keyboard 配置的放置位置

放置此配置的理想位置是在 supportFile中, 因为它会在任何测试文件执行前加载。

在测试配置中设置按键延迟

按键延迟也可以通过测试配置设置,这在为单个测试或一组测试设置时非常有用。

it(
'在本测试中移除所有输入的按键延迟',
{ keystrokeDelay: 0 },
() => {
cy.get('input').eq(0).type('快速输入')
cy.get('input').eq(1).type('更快的输入')
}
)

describe(
'在本套件中所有测试中移除按键延迟',
{ keystrokeDelay: 0 },
() => {
it('在第一个输入框中快速输入', () => {
cy.get('input').eq(0).type('快速输入')
})

it('在第二个输入框中快速输入', () => {
cy.get('input').eq(1).type('更快的输入')
})
}
)

另请参阅