答案 0 :(得分:1)
使用以下代码。这些是您没有使用适当的等待和XPath的机会。
System.setProperty("webdriver.chrome.driver", System.getProperty("user.dir") + "\\src\\test\\resources\\executables\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.seleniumeasy.com/test/basic-first-form-demo.html");
WebDriverWait wait = new WebDriverWait(driver, 20);
wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*[@id='at-cv-lightbox-close']")));
driver.findElement(By.xpath("//*[@id='at-cv-lightbox-close']"));
driver.quit();
答案 1 :(得分:1)
要单击并关闭弹出窗口,您需要为elementToBeClickable()
引入WebDriverWait,并且可以使用以下任一Locator Strategies:
cssSelector
:
new WebDriverWait(webDriver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("a[title='Close']"))).click();
xpath
:
new WebDriverWait(webDriver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//a[@title='Close']"))).click();