如果我的问题听起来很重要,我提前道歉,我在QA和Selenium都很新。
之间的确切区别是:
wait.until(ExpectedConditions.visibilityOfElementLocated
(By.xpath("//a[text()='Show advanced settings...']"))).click();
和
wait.until(ExpectedConditions.presenceOfElementLocated
(By.xpath("//a[text()='Show advanced settings...']"))).click();
我看了here,但没有弄明白。
答案 0 :(得分:13)
visibilityOfElmementLocated检查元素是否存在且是否可见。要检查可见性,请确保元素的高度和宽度大于0。
presenceOfElementLocated只检查dom以查看它是否可以定位元素,无论其可见性如何。
visibilityOf public static ExpectedCondition visibilityOf(WebElement element) 期望检查已知存在于页面的DOM上的元素是否可见。 可见性意味着不仅会显示元素,还会使其高度和宽度大于0。 参数:强>