我有多个XPath指向一个网页元素,我想确定这些元素是否等价(即,如果我在这两个元素上执行sendKeys()或click()操作,该操作将在同一个元素上执行)。目前,我使用以下方法检查它们的相等性:
WebElement element1 = driver.findElement(By.xpath(".//*[@id='ap_email']"));
WebElement element2 = driver.findElement(By.xpath(".//*[@type='email']"));
System.out.println(element1.equals(element2));
只要XPath指向同一个元素,这个方法就会返回true。
然而,我不确定该方法如何确定相等性?是否有任何情况下两个网页元素实际上是相同的(即对它们执行的任何操作都将在同一个网页元素上执行),但该方法显示它们不同?或反之亦然?
我正在尝试开发一种可靠的方法来确定两个网页元素的相等性。
我正在使用Java和Selenium。