gpt4 book ai didi

java - "Element not found in the cache - perhaps the page has changed since it was looked up"显示

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:14:40 26 4
gpt4 key购买 nike

当我注销并尝试在同一页面中登录时,“缓存中未找到元素 - 页面可能自查找后已更改”。

在上面的例子中,登录应用程序是成功的,当我从应用程序注销时,再次显示登录页面。问题是:当我尝试在同一页面中再次登录时,它显示缓存中未找到元素 - 也许页面在查找后已更改

登录网址(新鲜,第一次)://firco/en_US/ dLogput URL(再次显示登录页面)://firco/en_US/logout/

我想在第一次和第二次登录时使用相同的驱动程序(浏览器实例)。

public static void main(String[] args) 
WebDriver driver = new FirefoxDriver();
driver.get("//Continuity/en_US/");
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
WebElement uname = driver.findElement(By.xpath(".//*[@id='text-input-element-15']"));
WebElement pwd = driver.findElement(By.xpath("id('text-input-element-16')"));
WebElement busunit = driver.findElement(By.xpath("id('text-input-element-22')"));
WebElement login = driver.findElement(By.id("login-button"));
uname.sendKeys("RAGHU");
pwd.sendKeys("Hello00");
login.click();
WebElement LogoutButton = driver.findElement(By.xpath(".//*[@id='logout-button']"));
LogoutButton.click();
driver.get("//Continuity/en_US/");
uname.sendKeys("SUGU");

在上面的代码中,我想在第一次和第二次登录时(注销后)在同一个驱动程序中使用 uname

最佳答案

由于页面刷新或页面更改,您在单击登录按钮之前存储的 Web 元素将不会在登录后出现在缓存中。您需要再次存储这些 Web 元素,以便在缓存下再次使用它们。我已经稍微修改了您的代码,这可能会有所帮助:

public static void main(String[] args) 
WebDriver driver = new FirefoxDriver();
driver.get("//Continuity/en_US/");
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
WebElement uname = driver.findElement(By.xpath(".//*[@id='text-input-element-15']"));
WebElement pwd = driver.findElement(By.xpath("id('text-input-element-16')"));
WebElement busunit = driver.findElement(By.xpath("id('text-input-element-22')"));
WebElement login = driver.findElement(By.id("login-button"));
uname.sendKeys("RAGHU");
pwd.sendKeys("Hello00");
login.click();
WebElement LogoutButton = driver.findElement(By.xpath(".//*[@id='logout-button']"));
LogoutButton.click();
driver.get("//Continuity/en_US/");
uname = driver.findElement(By.xpath(".//*[@id='text-input-element-15']"));
uname.sendKeys("SUGU");

关于java - "Element not found in the cache - perhaps the page has changed since it was looked up"显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22348216/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com