【问题标题】:How to verify ANY text is present with selenium IDE如何使用 selenium IDE 验证是否存在任何文本
【发布时间】:2013-09-26 14:28:09
【问题描述】:

我知道如何使用 Selenium IDE 验证网页中是否存在特定文本。但我想知道的是,您能否验证元素中是否存在任何文本?

例如,有一个标题为“Top Champion”的文本框。此文本框将每天更改为一个人的姓名。现在我只想检查这个文本框中是否有文本,不管文本实际上是什么。我尝试了验证文本命令并尝试将值清空,但它不起作用。如果命令可以返回真正有用的真或假命令

顺便说一句,验证值也不起作用,因为我正在测试的元素不是表单字段

【问题讨论】:

    标签: text selenium ide verify


    【解决方案1】:

    您最好的选择如下(我已经为此编写了单次测试)

    中等严谨:

    waitForText | css=.SELECTORS | regex:.+?
    

    这将等到至少有 1 个字符出现。

    严格严谨(仅当您有一部分字符存在时才有效):

    waitForText | css=.SELECTORS | regex:^[0-9]+$
    

    这将等到有文本。此文本必须以数字开头,至少有 1 个数字,然后结束。它不允许给定子集之外的任何字符。您可以做一个匹配 numbersNAMEnumbers 的示例。

    waitForText | css=.SELECTORS | regex:^[0-9]+[a-zA-Z]+[0-9]+$
    

    这将等待一个字符串,例如 253432234BobbySmith332

    卢克

    【讨论】:

      【解决方案2】:

      如果我正确理解了您的问题,下面是您可以搜索包含字符串的元素的一种方法。不确定这是否是您正在寻找的。​​p>

      List<WebElement> findElement = webElement.findElements(By.xpath("YOUR_TEXTINPUT_PATH_HERE"));
           if( findElement.size() > 0 ){
                if( findElement.get(0).getText() != null &&   findElement.get(0).getText().indexOf("THE_STRING_THAT_YOU_WANT_TO SEARCH") != -1 ) {
                    // IF IT COMES HERE, THAT MEANS THE ELEMENT IS PRESENT WITH THE TEXT
                }
           }
      

      【讨论】:

        【解决方案3】:
        store text|[your element]|StoredText  
        execute script|return ${StoredText}.length > 0|x  
        assert|x|true  
        

        在 Selenium IDE 中使用这三行代码,第一行将从元素中提取文本到变量 StoredText。
        第二行将存储该文本的长度是否大于零到变量 x 中(结果为真或假)。
        第三行断言结果为真,否则测试失败。如果您想要的只是真假结果,则不需要第三行。

        因此,如果元素包含任何文本,则提取的文本长度将大于零,变量 x 将为真,断言将通过。这将验证元素中是否存在任何文本。

        【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-04-18
        • 2013-07-15
        • 2013-04-16
        • 2014-01-27
        • 1970-01-01
        • 1970-01-01
        • 2018-01-17
        • 2011-03-03
        相关资源
        最近更新 更多