java - 删除项目后检查项目是否成功删除并仅打印一次信息
问题描述
List<WebElement> list= driver.findElements(By.xpath("Abc"));
for (int i = 0; i< list; i++) {
if (list.get(i).getText().equals("Newly Created From Automation")) {
logger.info("Unable to delete Saved Filter Successfully");
}
else {
logger.info("Filter deleted successfully");
}
}
我希望 if 条件检查所有元素并仅打印一次 else 条件,如果所有元素的 if 条件为假,但它会继续为每个 webElement 打印 else 中的代码。
解决方案
为了得到你正在寻找的东西,你应该改变你的代码逻辑。
一种可能的方法如下:
- 将所有元素文本收集到一个列表中。
- 遍历文本。如果找到所需的文本 - 打印相应的输出。如果未找到该文本 - 打印其他输出。
请参阅下面的代码示例
List<WebElement> list = driver.findElements(By.xpath("Abc"));
List<String> texts = new ArrayList<>();
for(WebElement element : list){
texts.put(element.getText());
}
boolean found = false;
for(String str: texts) {
if(str.trim().contains("Newly Created From Automation")){
logger.info("Unable to delete Saved Filter Successfully");
found = true;
}
if(!found){
logger.info("Filter deleted successfully");
}
推荐阅读
- flutter - 当 Flutter 中没有足够的空间时,创建一个溢出来最小化
- prisma - 如何在 Prisma 2.0 中保存 Json?
- javascript - 有没有办法找出 Node.js 进程在哪个终端中运行?
- oauth - 如何在 oauth 2.0 中为 grant_type=password 传递用户 ID 和密码?
- amazon-s3 - 使用 Dask 将大于内存的数据帧缓存到本地磁盘
- python - 如何在 python 3.7 中使用 eval() 和 compile()?
- reactjs - 如何在 React 中的表单提交上重定向和传递数据作为道具?
- spring - 为什么我们使用@Autowire
- java - Libgdx - Tiledmap 渲染的瓷砖从屏幕上消失
- django - 无法在 Django 中将静态文件加载到我的 Index.html 中