5.9 浏览器多窗口处理
在进行Web测试时,还会弹出一些子窗口,并且在多个窗口之间进行切换操作。
例如,在百度首页,单击“注册”超级链接,如图5-65所示。
图5-65 百度首页
弹出一个标题为“百度账号注册”新页面,如图5-66所示。
接下来以百度账号注册窗口为例,讨论如何测试多个窗口之间的切换。
图5-66 百度注册页面
5.9.1 WindowHandles/getWindowHandles()
要在多个窗口之间进行切换,首先必须获取每个窗口的唯一标识符(句柄),通过WindowHandles属性(用于C#)/getWindowHandles()(用于Java)可以获取所有打开窗口的标识符,并将其以集合的形式返回。
下面举例说明先打开百度注册窗口,然后获取所有窗口的标识符并将其打印出来,代码如程序清单5-66或程序清单5-67所示。
程序清单5-66 C#代码
IWebDriver mainWindow = new FirefoxDriver(); |