java - 如何检查列表中的所有项目是否包含字符串中的任何字符

标签 java selenium junit selenium-chromedriver

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 $ ...

还有一个包含以下内容的字符串: 美元

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

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

尝试使用包含但仍然无法使其工作的断言... 我将不胜感激

最佳答案

首先,我将提取货币符号(假设:它是 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));
}

关于java - 如何检查列表中的所有项目是否包含字符串中的任何字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65082530/

相关文章:

java - 返回错误 "Test class should have exactly one public zero-argument constructor"

python - 如何使用 Selenium 将 nba.stats.com 上的页面从 "1"更改为 "All"

python - 使用 Selenium 通过 PhantomJS 中的超链接下载文件

c# - selenium webdriver中frame没有id和title时如何识别并切换到frame

java - 使用 JUnit 比较 2 个对象

groovy - 如何在 Spock 中为测试套件设置和清理资源

java - ParadiseInfo2 变量错误代码

java - 如何转义java正则表达式|运算符(operator)

java - Elastic Search Transport Client 过时连接

java - 使用java中的文件递归解决迷宫问题