selenium - Selenium 元素不可见异常:尽管使用正确的 XPATH 并设置断点以等待元素在 HTML 中显示
问题描述
$x("//input[contains(@id,'default-column')]")
- 返回 10 个元素
public List<WebElementFacade> defaultFieldsCheckBox;
$x("(//input[contains(@id,'default-column')])[1]")
- 返回 1 个元素
public WebElementFacade firstFieldsCheckBox;
“自定义点击”打开复选框列表
复选框在“自定义点击”后显示在视图中
我什至在“自定义单击”之后放置了一个断点,以确保显示复选框(见图)
mpAuthPage.firstFieldsCheckBox.isDisplayed() 抛出 ElementNotVisibleException:元素不可用
mpAuthPage.defaultFieldsCheckBox.size() 抛出 NoSuchElementException:元素不可见
firstFieldsCheckBox 可以通过 XPATH 找到,并在 HTML 中清晰显示
- defaultFieldsCheckBox.size() 应该返回 10 而不是错误 Element not Visible
- 关于我的问题的任何想法?
解决方案
科学回答了这个问题-谢谢!
感谢 scilence 这有效,这就是解决方案!
WebElement input = mpAuthPage.defaultFieldsCheckBox.get(i).findElement(By.xpath("preceding::input[1]"));
String isChecked = input.getAttribute("checked");
System.out.println("复选框" + getText(mpAuthPage.defaultFieldsCheckBox.get(i)) + "被选中" + isChecked);
推荐阅读
- security - 使用创建表的潜在安全漏洞
- sql-server - 如何解决 SQL 异常“由于此查询中定义的提示,查询处理器无法生成查询计划。” 由 HangFire 引起
- reactjs - 无法让 Sentry 在本地记录 React 问题
- github - GitHub 不显示来自 Jupyter Notebook 的正确输出
- vue.js - vue create 和 npm run serve 有不同的错误
- formatting - 将 .fmt 行为与嵌套列表混淆
- firebase - 颤振“[cloud_firestore/invalid-argument] 客户端指定了一个无效参数。”
- julia - 在 Julia 中“运行”字符串的方法?
- excel - Excel VBA中的规则词部分
- timescaledb - 如何重新分区/重构/减少时间尺度数据库中的块