点击带有下一箭头和后退箭头(<>)的图片部分中的图片海报时,我面临ElementNotVisible问题。图像海报在某些时间间隔内正在改变,就像在图像上是现在的孩子但在一段时间后相同变成父母或隐藏而其他成为小鸡。它会动态变化。
以下是代码:
while(!isFound)
{
Thread.sleep(7500);
driver.findElement(By.xpath("(//a[contains(text(),'Prev')])[2]")).click();////Clicking on Back/Prevous arrow
if(driver.findElement(By.xpath("(//a[@id='carousel-item-3025']/img)[2]")).isDisplayed())
{
driver.findElement(By.xpath("(//a[@id='carousel-item-3025']/img)[2]")).isFound=true;
break;
}
请提供解决方案。
答案 0 :(得分:0)
您应该等到所需元素变为可见:
WebDriverWait wait= new WebDriverWait(driver, 10);
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//a[@id='carousel-item-3025']/img)[2]"))).click();
请注意,此代码应等待不超过10
秒才能使元素可见。如果图像旋转的完整周期超过10
秒,则应设置更多等待时间