如何使用Selenium WebDriver验证元素中是否存在属性?

屏幕上有很多单选按钮。选择单选按钮时,其属性为选中。如果未选择单选按钮,则不存在选中的属性。我想创建一个方法,如果该元素不存在,它将通过。

我正在使用Selenium

WebDriver和Java。我知道我可以使用来检索属性getSingleElement(XXX).getAttribute(XXX)。我只是不确定如何验证属性不存在,以及如何在不存在属性时通过测试(如果存在则失败)。

选中单选按钮时

<input id="ctl00_cphMainContent_ctl00_iq1_response_0" type="radio" name="ctl00$cphMainContent$ctl00$iq1$response" value="1" checked="checked">

未选中单选按钮时

<input id="ctl00_cphMainContent_ctl00_iq1_response_0" type="radio" name="ctl00$cphMainContent$ctl00$iq1$response" value="1">

我要在不存在选中属性的情况下通过测试

回答:

您可以创建一种方法来正确处理它。请注意,以下是C#/ Java混合样式,您需要稍作调整以进行编译。

private boolean isAttribtuePresent(WebElement element, String attribute) {

Boolean result = false;

try {

String value = element.getAttribute(attribute);

if (value != null){

result = true;

}

} catch (Exception e) {}

return result;

}

如何使用它:

WebElement input = driver.findElement(By.cssSelector("input[name*='response']"));

Boolean checked = isAttribtuePresent(input, "checked");

// do your assertion here

以上是 如何使用Selenium WebDriver验证元素中是否存在属性? 的全部内容, 来源链接: utcz.com/qa/432995.html

回到顶部