【发布时间】:2017-10-13 07:53:19
【问题描述】:
我查看了在线论坛和本网站上的讨论并添加了等待功能。但是,它继续显示此错误 这是问题的代码:
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import com.google.common.base.Function;
public class WebDriverNavigate {
public static void main(String[] args) throws InterruptedException {
System.setProperty("webdriver.gecko.driver",System.getProperty("user.dir")+"/GeckoDriver/geckodriver.exe");
WebDriver driver = new FirefoxDriver();
driver.navigate().to("http://www.google.com");
WebElement textbox = driver.findElement(By.id("lst-ib"));
textbox.sendKeys("Search on Google");
WebDriverWait wait = new WebDriverWait(driver,10);
wait.until(visibilityOfElementLocated(By.id("lst-ib")));
driver.findElement(By.name("btnK")).click();;
textbox.clear();
textbox.sendKeys("This is the second search");
WebElement searchbutton2 = driver.findElement(By.id("fZl"));
searchbutton2.click();
driver.navigate().back();
driver.navigate().forward();
driver.navigate().refresh();
}
private static Function<WebDriver,WebElement> visibilityOfElementLocated(final By locator) {
return new Function<WebDriver, WebElement>() {
@Override
public WebElement apply(WebDriver driver) {
return driver.findElement(locator);
}
};
}
}
这是 HTML sn-p:
<input class="gsfi" id="lst-ib" maxlength="2048" name="q" autocomplete="off" title="Search" value="Search on Google" aria-label="Search" aria-haspopup="false" role="combobox" aria-autocomplete="list" style="border: medium none; padding: 0px; margin: 0px; height: auto; width: 100%; background: transparent url("data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw%3D%3D") repeat scroll 0% 0%; position: absolute; z-index: 6; left: 0px; outline: medium none;" dir="ltr" spellcheck="false" type="text">
控制台上的错误消息:
线程“main”中的异常 org.openqa.selenium.StaleElementReferenceException:元素引用过时:元素不再附加到 DOM 或页面已刷新
【问题讨论】:
标签: selenium-webdriver selenium-firefoxdriver