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/