I want to click a href link, then go back to previous page, then click next href link which has text "Meer info".
I wrote following code, but it is producing an Exception. I can go to web then click first link that I want to click with text name "Meer info" than go to back but then I want to click second linkText
also with the same text name "Meer info" but I don't know how to do that.
WebDriver driver = new FirefoxDriver();
driver.get("http://turksegids.nl/index.php");
Thread.sleep(3000);
driver.findElement(By.cssSelector("input[type='image'][value='Zoek!']")).click();
Thread.sleep(5000);
driver.findElement(By.linkText("Meer info")).click();
Thread.sleep(4000);
driver.findElement(By.linkText("Terug naar de resultatenpagina")).click();
Thread.sleep(8000);
driver.findElement(By.linkText("//a[text()=\"Meer info\"]/following-
sibling::a[2]")).click();
Thread.sleep(4000);
driver.close();
driver.quit();
I am getting this Exception
Unable to locate element: {"method":"link text","selector":"//a[text()=\"Meer info\"]/following-sibling::a[2]"}
You can use below code:
WebDriver driver = new FirefoxDriver();
driver.get("http://turksegids.nl/index.php");
driver.findElement(By.cssSelector("input[type='image'][value='Zoek!']")).click();
driver.findElement(By.linkText("Meer info")).click();
driver.findElement(By.linkText("Terug naar de resultatenpagina")).click();
driver.findElement(By.xpath("//*[@id='resultatenklik_28957_info']/u")).click();
driver.close();
driver.quit();
and see it works or not
Try to use
List<WebElement> element = driver.findElements(By.linkText("Meer info"));
element.get(2).click();
instead of
driver.findElement(By.linkText("//a[text()=\"Meer info\"]/following-
sibling::a[2]")).click();
It will work !!
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.