Selenium webdriver 如何检查每个元素是否都有ID?
我们只是想确保在开发团队实现的Web代码中,每个元素都有一个Selenium webdriver 如何检查每个元素是否都有ID?,selenium-webdriver,Selenium Webdriver,我们只是想确保在开发团队实现的Web代码中,每个元素都有一个ID属性值 我怎么查?谢谢 在浏览器中测试此xpath:/*[string(@id)]这将不仅为您提供具有id的元素,而且其id也具有一些值。开发人员可能忘记输入id。然后,使用此/*获取所有元素。如果您希望元素具有id(空白或填充),则使用此/*[@id](假设您使用的是Java),有一种方法可以获取元素的任何属性值 我们只是想确保在开发团队实现的Web代码中,每个元素都有一个ID属性值。我怎么查 您需要首先找到所有元素,然后在循环内
ID
属性值
我怎么查?谢谢 在浏览器中测试此xpath:
/*[string(@id)]
这将不仅为您提供具有id的元素,而且其id也具有一些值。开发人员可能忘记输入id。然后,使用此/*
获取所有元素。如果您希望元素具有id(空白或填充),则使用此/*[@id]
(假设您使用的是Java),有一种方法可以获取元素的任何属性值
我们只是想确保在开发团队实现的Web代码中,每个元素都有一个ID属性值。我怎么查
您需要首先找到所有元素,然后在循环内部,您可以使用getAttribute(“ID”)
确定每个元素是否具有属性ID
,如下所示:-
public boolean isAllElementsHasId()
{
boolean isAllElementsHasId = true;
List<WebElement> allPageElements = driver.findElements(By.cssSelector("*"));
for(WebElement el : allPageElements)
{
if(el.getAttribute("id") == null)
{
isAllElementsHasId = false;
break;
}
}
return isAllElementsHasId
}
您使用哪种浏览器进行测试?您的解决方案简单易行。谢谢@凯文-那么请接受这个答案。尝试在脚本中使用我的代码,该脚本将自动为您检查内容。
if(isAllElementsHasId() == true)
{
System.out.println("All elements in the page has an attribute ID");
}