How to switch control to pop-up window(WebDriver)----> Handling Pop Ups - Bug Reaper

                  Bug Reaper

Lean about Automation Testing,Selenium WebDriver,RestAssured,Appium,Jenkins,JAVA,API Automation,TestNG,Maven, Rest API, SOAP API,Linux,Maven,Security Testing,Interview Questions

Monday 23 September 2013

How to switch control to pop-up window(WebDriver)----> Handling Pop Ups

If you want to do any operations in pop-up window you need to switch the control to pop-up window then do all your operations in that and finally close the pop-up window and again select the default (main ) window.

here is WebDriver logic to select Pop-up window

1 . Pop-up window has name/id

     driver.switchTo().window("<window name>");

2. Pop-up window doesn't have name / you don't want to hard code the window name then go for below logic.

  • before opening pop-up get the main window handle.
             String mainWindowHandle=driver.getWindowHandle();
  • open the pop-up (click on element which causes open a new window)
             webElement.click();
  • try to get all available open window handles with below command. (the below command returns all window handles as Set)
            Set s = driver.getWindowHandles();
  • from that above set try get newly opened window and switch the control to that (pop-up window handle), as we already know the mainWindowHandle.

                        Set s = driver.getWindowHandles();

Iterator ite = s.iterator();

while(ite.hasNext())
                       {
String popupHandle=ite.next().toString();
if(!popupHandle.contains(mainWindowHandle))
{
driver.switchTo().window(popupHandle);
}
}

No comments:

Post a Comment