zoukankan      html  css  js  c++  java
  • 如何得到新打开的窗口

    import java.io.File;
    import java.util.Iterator;
    import java.util.Set;

    import org.openqa.selenium.By;
    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;

    /*
     * 如何得到新打开的窗口
     */
    public class PopupWindowTest {

        public static void main(String[] args) {
            WebDriver dr = new ChromeDriver();
            File file = new File("learning/test.html");
            String filePath = "file:///" + file.getAbsolutePath();
            System.out.println(filePath);

            dr.get(filePath);
            dr.findElement(By.id("51")).click();

            // 得到当前窗口句柄
            String currentWindow = dr.getWindowHandle();

            Set<String> handles = dr.getWindowHandles();
            Iterator<String> it = handles.iterator();

            while (it.hasNext()) {
                String tmp = it.next();
                if (currentWindow.equals(tmp))            // currentWindow == tmp  返回 false  字符串值比较用 equals, 字符串 == 比较的是地址
                    continue;

                WebDriver window = dr.switchTo().window(tmp);
                System.out.println("title = " + window.getTitle() + " , url = "
                        + window.getCurrentUrl());
            }

            /*
             * while (it.hasNext()) { if (currentWindow == it.next()) continue;
             *
             * WebDriver window = dr.switchTo().window(it.next());
             * System.out.println("title = " + window.getTitle() + " , url = " +
             * window.getCurrentUrl()); }
             */

            dr.quit();
        }

    }

  • 相关阅读:
    在酷热的就业天气寻找几丝凉意
    《Orange ’ s :一个操作系统的实现 》作者自序
    Windows的设备驱动框架
    Windows的设备驱动框架中的上层与下层模块
    如何搭建自己的开发环境
    数据库设计指南(二)设计表和字段
    软件敏捷架构师
    Struts到JSF/Tapestry
    敏捷开发
    barcode制作条形码及破解
  • 原文地址:https://www.cnblogs.com/Roger1227/p/3833688.html
Copyright © 2011-2022 走看看