javascript - TestCafé:如何在没有选择器的情况下使用 typeText
问题描述
我有两个关于typeText
函数的问题。
- 根据文档,我需要两个参数:选择器和要输入的文本。但是,我正在测试一个自动将焦点设置在输入元素上的应用程序,我不能依赖它的 ID、类或任何
Selector
需要的东西。我只想像在 Cypress 中那样输入,而无需先选择某些内容。这可能吗? - 该
typeText
方法还需要第二个参数(文本)。但有时,我不想将任何文本放入字段中(例如测试登录组件)。现在,我需要为这些类型的测试创建条件,因为 TestCafé 会在空字符串上引发错误。有没有更好的办法?
static async login({ email = '', password = '' }) {
await t
.typeText('#email', email)
.typeText('#password', password)
.click('#submit');
}
解决方案
也许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
会转移到下一个领域,但我认为这也适用于你的第二点
推荐阅读
- android - ListView onItemClick() 未执行
- authentication - Rundeck 作业因“错误:PAM:身份验证失败”而失败
- firebase - 如何将我的数据库最近的帖子显示在顶部?
- nuget - Visual Studio 2019 未正确还原 NET Standard 2.0 项目依赖项
- python - 在多个列表中查找公共元素,如果它们在 Python 中匹配,则删除数据
- python-3.x - 除了Linux中的主进程内存之外,是否有可能知道受线程影响的内存?
- css - 如何在 Storybook 构建中包含字体
- javascript - 如何通过 Javascript 动画添加 HTML
- mysql - 使用 flask-migrate 时出现 Flask 迁移错误
- c++ - 有没有办法在没有命名空间的 c++ 中嵌套枚举?