zoukankan      html  css  js  c++  java
  • selenium跳转新窗口的问题

    1、通过窗口的标题去跳转新窗口

    String parentWin=this.getWindowHandle();//获取当前窗口的句柄
    Set<String> allWindowsId = driver.getWindowHandles();//获取所有窗口句柄
    for(String windowId :allWindowsId){
        if(driver.switchTo().window(windowId).getTitle().contains("市场")){
            driver.switchTo().window(windowId);
            break;
        }
    }
    Assert.assertEquals("国云数据市场", driver.getTitle());
    System.out.println("New page title is:" + driver.getTitle());

    2、通过tab的id,跳到最后一个tab页

    Set<String> winSet = this.driver.getWindowHandles();//获取所有句柄
        List<String> winList = new ArrayList<String>(winSet);//转成list列表
        String newTab = winList.get(winList.size() - 2);//定义新的tab页是倒数第二个页面
        driver.close(); // close the original tab 关闭最后一个
        driver.switchTo().window(newTab); // switch to new tab  跳到原来的倒数第二个
        Thread.sleep(1000);

    另一种通过index的值去确定

        Set<String> allWindowsId = driver.getWindowHandles();//获取所有窗口句柄
    //    List<String> winList=new ArrayList<String>(allWindowsId);
        driver.switchTo().window(allWindowsId.toArray()[allWindowsId.size() - 1].toString());   //跳到最后一个tab页
        Assert.assertEquals("国云数据市场", driver.getTitle());
        System.out.println("New page title is:" + driver.getTitle());
  • 相关阅读:
    碰到一个在app内部浏览器锚点异常的问题
    常用js方法
    preg_match_all正则表达式的基本使用
    无线路由器WDS 桥接设置方法
    链表和数组的区别在哪里?
    php报错: PHP Warning: PHP Startup: memcache: Unable to initialize module
    mysql修改密码
    快速排序
    vuex到底是个啥
    vue实现简单表格组件
  • 原文地址:https://www.cnblogs.com/amy7758/p/5623512.html
Copyright © 2011-2022 走看看