selenium webdriver + java 进行元素定位时的页面跳转问题
2018-07-06 11:23
591 查看
在使用selenium-Java对元素进行定位时,初学者经常遇见以下两种问题:
问题一:在当前页面进行跳转时,提示 Unable to locate element
原因:driver在打开网页时,网页加载速度过慢,导致接下来的语句找不到元素;
解决办法:在跳转之前Thread.sleep(5000);
问题二:在页面跳转时产生窗口切换,提示Unable to locate element
原因:窗口句柄还停留在上一个页面,需要对窗口进行切换,获得当前句柄之后,再进行跳转,就不会出现问题了。
java实现如下:
/*
* 窗口切换,获取窗口句柄
*/
String winHandleBefore = driver.getWindowHandle();
for(String winHandle : driver.getWindowHandles()) {
if (winHandle.equals(winHandleBefore)) {
continue;
}
driver.switchTo().window(winHandle);
break;
}
driver.findElement(By.linkText("个人信息")).click();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
备注:上述语句为Java实现方式,如果使用的是Python,语句不一样。
阅读更多相关文章推荐
- java selenium webdriver实战 页面元素定位
- 【Selenium】webdriver进行页面元素定位
- 【selenium学习笔记】webdriver进行页面元素定位
- Selenium(四)――webdriver 之定位页面元素
- 【selenium webdriver】 XPath 多条件查询语句(处理同一个页面上出现相同文本按钮的动态ID元素定位)
- 在Selenium WebDriver中使用By.Xpath快速定位页面元素
- 在Selenium WebDriver中使用By.Xpath快速定位页面元素
- selenium webdriver学习(四)------------定位页面元素(转)
- selenium webdriver xpath 定位页面元素
- Java中通过Selenium WebDriver定位iframe中的元素
- selenium webdriver 元素定位常见问题
- Selenium webdriver 在IE下定位找不到元素的问题
- selenium2+webdriver+java利用firepath定位隐藏div中的问题
- python+selenuim webdriver 页面跳转后如何定位元素
- 使用selenium webdriver进行元素定位
- 在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素。其中By类的常用定位方式共八种,现分别介绍如下
- selenium webdriver学习(四)------------定位页面元素
- selenium_webdriver(python)多层框架/窗口中元素定位问题
- JAVA_WEB Struts2学习:使用验证框架进行校验JSP页面元素 反编译工具的配置 Strtuts2 国际化学习
- 【开源自动化测试疑难FAQ】【WebDriver】封装GET方法来解决页面跳转不稳定的问题