Handle popup windows in Selenium 2

In Selenium 2(WebDriver), testing popup windows involve switching the driver to the popup window and then running the corresponding actions. Twist recorder records actions in popup windows as commented code.

For eg.

      //Write your logic to locate the appropriate popup before using commented actions.
      //Look at - 'How do I handle popup in WebDriver' section for more details.
      //action in popup "Google". popup.findElement(By.name("q")).sendKeys("Thoughtworks");
      //action in popup "Google". popup.findElement(By.name("btnG")).submit();"
      
The above code is the result of recording in the popup window having google search page, searching for "Thoughtworks".

To get the above code working:

1) Identify the popup,

The following code identifies the popup window with title "Google". Note that the actions tells the title of the popup window. Add the code just before the first popup action being commented.

      String parentWindowHandle = browser.getWindowHandle(); // save the current window handle.
      WebDriver popup = null;
      Iterator<String> windowIterator = browser.getWindowHandles();
      while(windowIterator.hasNext()) { 
        String windowHandle = windowIterator.next(); 
        popup = browser.switchTo().window(windowHandle);
        if (popup.getTitle().equals("Google") {
          break;
        }
      }
      
2) Uncomment code for the same popup,
      //action in popup "Google". 
      popup.findElement(By.name("q")).sendKeys("Thoughtworks");
      //action in popup "Google". 
      popup.findElement(By.name("btnG")).submit();"
      
3) After the popup actions, switch the driver back to the parent window,
      browser.close(); // close the popup.
      browser.switchTo().window(parentWindowHandle); // Switch back to parent window.
      

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值