如何找到新窗口并定位


貌似这个问题挺多,研究了一下,有以下心得(只讨论新窗口,同一个窗口可以用select_windows适用)。
   Normal  0        7.8 磅  0  2    false  false  false    EN-US  ZH-CN  X-NONE                                                            MicrosoftInternetExplorer4                                                                                                                                                                                                                                                                                                                        
first 页面打开新的页面 second ,然后从 second 跳回 first ,同时 second 关闭。  
selenium .open( "file:///D:/tmp/html/first.html" );
selenium .click( "//a[@href]" );
      Thread.sleep(1000);
      String popID =  selenium .getEval( "{varwindowId; for(var x in selenium.browserbot.openedWindows ) {windowId=x;}}" );
      System. out .println( "!!popID:"  +popID);
selenium .selectWindow(popID);
       System. out .println( "!!poptitle:" + selenium .getTitle());
selenium .click( "//a[@href]" );
selenium .selectWindow( null );
        System. out .println( "!!poptitle:" + selenium .getTitle());
  重点是 StringpopID =  selenium .getEval( "{var windowId;for(var x in selenium.browserbot.openedWindows ) {windowId=x;}}" ); 这个语句是嵌入到页面 javascript 去执行的,从javascript返回中获得新 Windows WindowsID ;如果要跳转回去,那么就是 selenium .selectWindow( null);上述代码在FirefoxIE中测试通过,其中IE可能要做一些设置:工具”->internet 选项”->“高级”->“安全”->"允许活动内容的文件在我的计算机中运行。
参考资料:selenium google group discussion
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值