定位不到页面元素,大神们帮帮忙
点击按钮弹出新的子窗口,然后定位到新窗口,用By.Xpath方法取页面上的Select链接,可是总报错,提示找不到页面元素,找不到原因,郁闷中,请大神们帮帮忙。下面是测试代码,附件是页面源码:
String parentwindowID = driver.getWindowHandle();
System.out.println("Parent window ID is"+parentwindowID);
driver.findElement(By.xpath("//*[@id=\"pl_kna1_katr6\"]/img")).click();
Set<String> allWindowsID = driver.getWindowHandles();
System.out.println(allWindowsID);
for (String windowID:allWindowsID){
if (!driver.switchTo().window(windowID).getWindowHandle().equals(parentwindowID)){
driver.switchTo().window(windowID);
}
}
String newID = driver.getWindowHandle();
System.out.println(newID);
driver.findElement(By.xpath("//*[@id=\"pickListForm\"]/table/tbody/tr/td/a")).click();
顶顶顶 for (String windowID:allWindowsID){
if (windowID.equals(parentwindowID)){
driver.switchTo().window(windowID);
} 清晨一缕阳光 发表于 2016-8-26 08:36
你的代码是要切换到原来的窗口,我是需要切换到新弹出窗口,然后找新窗口中的元素。我按你的前面再加了个!改了,结果还是不行。我已经能够定位到新窗口,可是就是找不到新窗口中的元素,崩溃了 1、到新页面后等待下,有可能是跳转后页面元素没有加载出来。
2、有可能已经找到元素了,但是找到多个元素,从而click报错。通过firebug看下,或者在代码中打印日志输出元素个数。
3、元素是动态变化的,debug代码看看是否是这个原因导致的。
页:
[1]