【问题标题】:Check if box is selected Selenium检查是否选中了 Selenium
【发布时间】:2015-08-05 19:53:45
【问题描述】:

我有一个网络元素<div class="check-indicator"/>,我想看看这个元素是否被选中,所以我在网上搜索,发现我可以做到

boolean condition = driver.findElement(By.cssSelector
    ("div[class='check-indicator']")).isSelected();

但检查元素时条件返回 false。

我不确定自己做错了什么?


由于<div> 标签/元素不返回布尔值,我转而通过查找包含active 子字符串的元素来解决它,该子字符串表示选中了一个复选框(但这里的复选框实际上是一个图像一个复选框,这就是为什么我必须这样做)。

【问题讨论】:

  • 您能否发布该元素的html代码并尽可能链接到该页面。您可以检查元素的属性

标签: java selenium css-selectors


【解决方案1】:

isSelected() 仅适用于输入元素,例如选择中的复选框选项和单选按钮。

您正试图在 div 上调用它,而这不可能永远返回 true

来源:https://github.com/SeleniumHQ/selenium/blob/master/java/client/src/org/openqa/selenium/WebElement.java#L116

编辑

根据您的评论,它看起来像一个边缘案例,您需要实现一些自定义的东西。查看您的班级名称,"check-indicator" 告诉我它表明它IS已检查..因此,仅验证它的存在就足够了。

【讨论】:

  • 谢谢,但是如果没有任何选择元素或单选按钮怎么办?
  • 谢谢,我想我知道我现在的问题出在哪里了。我将重新编辑我的问题以包含答案。
  • 另外,一旦我获得所需的分数,我会为你的答案投票。再次感谢!
猜你喜欢
  • 2013-01-04
  • 2012-12-12
  • 2014-07-11
  • 2018-07-20
  • 2014-06-15
  • 1970-01-01
  • 2016-09-26
  • 2012-02-09
  • 1970-01-01
相关资源
最近更新 更多