TestCafé:如何在没有选择器的情况下使用 typeText
TestCafé: How to use typeText without selector
我有两个关于 typeText
函数的问题。
- 根据文档,我需要两个参数:选择器和要键入的文本。但是,我正在测试一个自动将焦点设置在输入元素上的应用程序,我不能依赖它的 ID class 或任何
Selector
需要的东西。我只想打字,就像在赛普拉斯中一样,而不是先选择一些东西。这可能吗?
typeText
方法还需要第二个参数(文本)。但有时,我不想将任何文本放入字段中(例如测试登录组件)。现在,我需要为这些类型的测试创建条件,因为 TestCafé 会在空字符串上引发错误。有没有更好的方法?
static async login({ email = '', password = '' }) {
await t
.typeText('#email', email)
.typeText('#password', password)
.click('#submit');
}
也许 pressKey
适合您?它要求输入由空格分隔但不需要选择器。 Documentation for pressKey
示例:
await t
.pressKey('u s e r @ t e s t . c o m enter')
.pressKey('p a s s w o r d enter')
我假设 enter
或 tab
会移至下一个字段,但我认为这也适用于您的第二点
我有两个关于 typeText
函数的问题。
- 根据文档,我需要两个参数:选择器和要键入的文本。但是,我正在测试一个自动将焦点设置在输入元素上的应用程序,我不能依赖它的 ID class 或任何
Selector
需要的东西。我只想打字,就像在赛普拉斯中一样,而不是先选择一些东西。这可能吗? typeText
方法还需要第二个参数(文本)。但有时,我不想将任何文本放入字段中(例如测试登录组件)。现在,我需要为这些类型的测试创建条件,因为 TestCafé 会在空字符串上引发错误。有没有更好的方法?
static async login({ email = '', password = '' }) {
await t
.typeText('#email', email)
.typeText('#password', password)
.click('#submit');
}
也许 pressKey
适合您?它要求输入由空格分隔但不需要选择器。 Documentation for pressKey
示例:
await t
.pressKey('u s e r @ t e s t . c o m enter')
.pressKey('p a s s w o r d enter')
我假设 enter
或 tab
会移至下一个字段,但我认为这也适用于您的第二点