51Testing软件测试论坛
标题:
【分享】模态窗口元素定位问题
[打印本页]
作者:
abd345
时间:
2016-2-2 09:03
标题:
【分享】模态窗口元素定位问题
我遇到的情况时主窗体是模态窗口,弹出的窗口也是模态窗口,执行脚本时,出现driver挂死的情况。网上找了很多帖子,找到一个可以使用的方法,有出现同样情况的朋友可以试试。
部分代码:
// 点击新建按钮
WebElement add = driver.findElement(By.xpath("//nobr[text()='新建']"));
JavascriptExecutor jse = (JavascriptExecutor) driver;
String js = "window.open(URL)";
jse.executeScript(js);
// 切换到新建窗口
for (String winHandle : driver.getWindowHandles()) {
System.out.println("++++:" + winHandle);
if (winHandle.equals("") || winHandle == null) {
continue;
} else if (winHandle.equals(beforeHandle)) {
continue;
} else {
driver.switchTo().window(winHandle);
break;
}
}
使用JS打开新窗口,新窗口就不是
模态
对话框了,把上面代码的URL替换成要打开的新窗口URL即可。如果大家有更好的方法,希望回复学习一下。
作者:
prettyfool
时间:
2016-2-3 11:19
else if (winHandle.equals(beforeHandle)) {
continue;
}
这句是什么意思,beforeHandle是什么意思
作者:
abd345
时间:
2016-2-14 14:16
beforeHandle是原窗口的句柄变量,代码没有贴出来。这句话就是判断是否是原窗口句柄,如果是循环继续。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2