java selenium 操作弹出窗口示例代码
时间:2021-05-27 08:42:48|栏目:JAVA代码|点击: 次
selenium 中如何处理弹出窗口
阅读目录
- 原理
- 测试页面的HTML
- Java 代码
原理
在代码里, 通过 Set<String> allWindowsId = driver.getWindowHandles();
来获取到所有弹出浏览器的句柄, 然后遍历, 使用swithcto.window(newwindow_handle)方法。 就可以定位到新的窗口
测试页面的HTML
<html>
<head>
<title>常见web ui元素操作, 及API使用</title>
<script type="text/javascript">
function open_win()
{
window.open("http://www.cnblogs.com")
}
</script>
</head>
<body>
<form>
<input type=button value="打开窗口" onclick="open_win()">
</form>
</div>
</body>
</html>
Java 代码
public static void testMultipleWindowsTitle(WebDriver driver) throws Exception
{
String url="E:\\StashFolder\\huoli_28@hotmail.com\\Stash\\Tank-MoneyProject\\Selenium Webdriver\\AllUIElement.html";
driver.get(url);
// 获取当前窗口的句柄
String parentWindowId = driver.getWindowHandle();
System.out.println("driver.getTitle(): " + driver.getTitle());
WebElement button = driver.findElement(By.xpath("//input[@value='打开窗口']"));
button.click();
Set<String> allWindowsId = driver.getWindowHandles();
// 获取所有的打开窗口的句柄
for (String windowId : allWindowsId) {
if (driver.switchTo().window(windowId).getTitle().contains("博客园")) {
driver.switchTo().window(windowId);
break;
}
}
System.out.println("driver.getTitle(): " + driver.getTitle());
// 再次切换回原来的父窗口
driver.switchTo().window(parentWindowId);
System.out.println("parentWindowId: " + driver.getTitle());
}
以上就是关于Java selenium 操作弹窗窗口的示例,后续继续整理相关资料,谢谢大家对本站的支持!


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




