![](/img/trans.png)
[英]How to prevent null return when initializing driver in selenium using java
[英]Selenium Java how to return the driver back to the previous page
我在 pageA 中有两个链接。 当我单击第一个链接时,它会重定向到另一个名为 pageB 的页面并执行某些特定工作并返回到 pageA。 从这里它应该再次单击到第二个链接,但它说页面已重新加载并且没有可用的缓存。
//List of all tickets
for(WebElement ticket: ticketList){
List<WebElement> ticketCells = ticket.findElements(By.tagName('td'));
if(ticketCells.get(4).getText().equalIgnoreCase("Some Text")){
ticketCells.get(2).click(); //Redirects to pageB
.....
do some job
.......
//Finally clicking on the 'SAVE & BACK' button which should return to previous
//page and pick the 2nd ticket from the list of all tickets (1st for loop)
driver.findElement(By.id("save&back")).click();
}
}
这里虽然它返回到上一页 pageA 但无法从 for 循环中选择第二个元素进行下一个操作。
关于如何让它发挥作用的任何想法。
我认为您想要的相当于按浏览器的后退按钮,对吗?
如果是这样,请尝试:
webDriver.navigate().back();
如果你想在 java selenium 浏览器中导航到后一页或上一页。 你可以试试
webDriver.navigate().back();
如果你想在 python selenium 浏览器中导航到后一页或上一页。 你可以试试
driver.back();
如果你想在 JavaScript selenium 浏览器中导航到后一页或上一页。 你可以试试
driver.execute_script("window.history.go(-1)");
@try-catch-finally explained it very clearly. The below code is exactly what you need to handle the error.
for(int i = 0; i <2 ;i++){
ticketList = driver.findElements(selector);
ticket = ticketList.get(i);
List<WebElement> ticketCells = ticket.findElements(By.tagName('td'));
if(ticketCells.get(4).getText().equalIgnoreCase("Some Text")){
ticketCells.get(2).click(); //Redirects to pageB
.....
do some job
.......
//Finally clicking on the 'SAVE & BACK' button which should return to previous
//page and pick the 2nd ticket from the list of all tickets (1st for loop)
driver.findElement(By.id("save&back")).click();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.