陈旧元素Selenium和Java的JSON状态映射
我写了一个脚本,收到了一个陈旧的元素错误。我知道问题是什么,但我不知道如何修复脚本
我正在编写一个脚本,通过FireFox执行以下操作:1)启动谷歌。com,2),输入“pluralsight”,3),提交,4),点击图片链接
除了选择图片链接,我可以执行每一步。当我检查错误时,似乎ide正在搜索位于谷歌主页上的图像链接,而不是点击谷歌搜索后出现的图像链接(我希望这是有意义的)。以下是脚本:
enter code here
package com.pluralsight;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
public class WebDriverTutorial {
public static void main(String[] args) {
// TODO Auto-generated method stub
//System.setProperty("webdriver.gecko.driver", "C:\\Program Files(x86)\\Drivers\\Gecko\\geckodriver.exe");
WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
WebElement searchfield = driver.findElement(By.name("q"));
searchfield.sendKeys("pluralsight");
searchfield.submit();
WebElement imagesLink= driver.findElements(By.linkText("Images")).get(0);
driver.navigate().refresh();
imagesLink.click();
谢谢你的帮助。谢谢
# 1 楼答案
下面的图片是我想要得到的:
Expected End Result
实际结果如下(无
driver.navigate().refresh()
):Actual End Result 1
和
driver.navigate().refresh()
Actual End Result 2
下面是一个错误日志:
在上面的图片中,当“pluralsight”出现在搜索栏中后,页面不会提交(这意味着它不会搜索)。相反,它会刷新(导致搜索栏清空),然后从主页上选择“图像”链接