다음 세 가지 유형이 있습니다.
1. 요소가 클릭되어 보이지 않습니다.
클릭하도록 Actions 또는 JavascriptExecutor 를 사용 하십시오.
행동 별 :
WebElement element = driver.findElement(By("element_path"));
Actions actions = new Actions(driver);
actions.moveToElement(element).click().perform();
JavascriptExecutor로 :
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("scroll(250, 0)"); // if the element is on top.
jse.executeScript("scroll(0, 250)"); // if the element is on bottom.
또는
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("arguments[0].scrollIntoView()", Webelement);
그런 다음 요소를 클릭하십시오.
2. 요소를 클릭하기 전에 페이지가 새로 고쳐집니다.
이를 위해 페이지를 몇 초 동안 기다리십시오.
3. 요소를 클릭 할 수 있지만 그 위에 회 전자 / 오버레이가 있습니다.
아래 코드는 오버레이가 사라질 때까지 기다립니다.
By loadingImage = By.id("loading image ID");
WebDriverWait wait = new WebDriverWait(driver, timeOutInSeconds);
wait.until(ExpectedConditions.invisibilityOfElementLocated(loadingImage));
그런 다음 요소를 클릭하십시오.