一尘不染

selenium复选框属性“已选中”

selenium

我正在Java中使用Selenium来测试Webapp中复选框的检查。这是代码:

private boolean isChecked;
private WebElement e;

我声明e并将其分配给复选框所在的区域。

isChecked = e.findElement(By.tagName("input")).getAttribute("checked").equals("true");

奇怪的是getAttribute("checked")回报null,因此NullPointerException

在复选框的HTML中,没有checked显示属性。但是,不是所有input元素都有一个checked = "true",这样的代码就可以工作吗?


阅读 341

收藏
2020-06-26

共1个答案

一尘不染

如果您使用的是Webdriver,则正在寻找的项目已选中。

除非指定,否则通常在复选框呈现中实际上不会应用选中的属性。

所以您在Selenium Webdriver中寻找的是

isChecked = e.findElement(By.tagName("input")).Selected;

由于WebDriver Java API中没有选定对象,因此上述代码应如下所示:

isChecked = e.findElement(By.tagName("input")).isSelected();
2020-06-26