源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

java selenium 操作弹出窗口示例代码

  • 时间:2022-07-24 22:19 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:java selenium 操作弹出窗口示例代码
[b]selenium 中如何处理弹出窗口[/b] 阅读目录 [list=1] [*]原理[/*] [*]测试页面的HTML[/*] [*]Java 代码[/*] [/list] [b]原理[/b] 在代码里, 通过         Set<String> allWindowsId = driver.getWindowHandles(); 来获取到所有弹出浏览器的句柄,   然后遍历,  使用swithcto.window(newwindow_handle)方法。 就可以定位到新的窗口 [b]测试页面的HTML[/b]
<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>
[b]Java 代码[/b]
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 操作弹窗窗口的示例,后续继续整理相关资料,谢谢大家对本站的支持!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部