Selenium webdriver 如何检查每个元素是否都有ID?

Selenium webdriver 如何检查每个元素是否都有ID?,selenium-webdriver,Selenium Webdriver,我们只是想确保在开发团队实现的Web代码中,每个元素都有一个ID属性值 我怎么查?谢谢 在浏览器中测试此xpath:/*[string(@id)]这将不仅为您提供具有id的元素,而且其id也具有一些值。开发人员可能忘记输入id。然后,使用此/*获取所有元素。如果您希望元素具有id(空白或填充),则使用此/*[@id](假设您使用的是Java),有一种方法可以获取元素的任何属性值 我们只是想确保在开发团队实现的Web代码中,每个元素都有一个ID属性值。我怎么查 您需要首先找到所有元素,然后在循环内

我们只是想确保在开发团队实现的Web代码中,每个元素都有一个
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");
}