【问题标题】:How to check that all items in the list contains any character from string如何检查列表中的所有项目是否包含字符串中的任何字符
【发布时间】:2021-03-12 21:41:51
【问题描述】:
List<WebElement> elements = driver.findElements(By.className("price"));
        for (WebElement element : elements) {
            System.out.println(element.getText());
    }


        String currency = driver.findElement(By.cssSelector("#_desktop_currency_selector > div > span.expand-more._gray-darker.hidden-sm-down")).getText();
        System.out.println(currency);

我的列表包含: 22,33 美元 44,22 $ 22,11 美元 ...

还有一个字符串,其中包含: 美元

我的测试需要检查网站标题下拉菜单中的货币类型是否与所有显示项目中的货币类型字符匹配。

如果列表中的所有元素都包含货币设置中的任何符号(例如 $) - 测试通过,否则失败

尝试使用包含但仍然无法使其工作的断言... 我会很感激你的帮助

【问题讨论】:

    标签: java selenium junit selenium-chromedriver


    【解决方案1】:

    首先,我将提取货币符号(假设:它是currency 字符串末尾的单个字符):

    String currencySymbol = currency.substring(currency.length() - 2);
    

    然后,我会检查所有元素并检查它们是否包含它:

    for (WebElement element : elements) {
        // You should probably also add a user-friendly message here
        assertTrue(element.getText().endsWith(currencySymbol));
    }
    

    【讨论】:

      猜你喜欢
      • 2023-03-27
      • 1970-01-01
      • 2012-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      相关资源
      最近更新 更多