首页 > 解决方案 > Testcafe:有没有办法添加多个文本作为 Selector().withText(text) 的输入 - 应用程序支持多种语言时的问题

问题描述

使用 : Selector().withText(text) -> 定位元素是理想的定位方法,如果我们没有任何其他匹配的标签名称到元素,但当应用程序支持多种语言时,即多于 1 种语言那么文本字段将因选择的不同语言而异。

可能很少有建议从前一个元素或下一个元素遍历和查找,但例如让文本是一个警告消息,根据用户输入而变化,即有时它可能是无效的用户名,有时它可能不是注册用户,如果没有准确的文本定位它会导致测试失败。

是否有任何建议添加多个文本,例如 xpath //*[text()='abc' || testcafe 中的 text()='xyz'] ?

标签: xpathcss-selectorsautomated-testse2e-testingtestcafe

解决方案


您可以尝试使用正则表达式来处理场景,

Selector("element").withText(/text1|text2|text3/);

您还可以根据其属性选择元素。 https://devexpress.github.io/testcafe/documentation/reference/test-api/selector/withattribute.html


推荐阅读