newuser
newuser

Reputation: 69

Selenium Webdriver - Accessing 2nd Child window(Popup)

I am automating an application in IE where if user clicks a link on the main window , a child window popups. User further clicks another link from the child window where a 2nd child window popsup. Please find the screenshot of the same application screenshot

Problem is that the 3rd popup window is behind the 2nd popup window. with the following code i am able to get the title for the 3rd popup window, but cannot able to work (Like click on any link etc) over there.

Please find below the code which i have used to navigate to 3rd window from the 2nd.

`String Mw1 = driver.getWindowHandle();
 //User clicks a radio button on 2nd window
 driver.findElement(By.id("CallType-0")).click(); 
 //User click a submit button and after this the 3rd window popsup
 driver.findElement(By.id("cmdLogCall")).click();
 Set<String> r1=driver.getWindowHandles();
 Iterator<String> i2 =r1.iterator();
 while (i2.hasNext())
  {
     String childwindow2 = i2.next();
      if(!Mw1.equalsIgnoreCase(childwindow2))           
         {          
             driver.switchTo().window(childwindow2); 
             String z = driver.getTitle();

                 System.out.println(z);

                 driver.findElement(By.id("overridelink")).click();

              }       

     }`

Kindly let me know how can i access the 3rd window.Thanks

Upvotes: 0

Views: 1082

Answers (1)

NarendraR
NarendraR

Reputation: 7708

Use the following code to switch onto the required window

ArrayList<String> allWindows = new ArrayList<String> (driver.getWindowHandles());

driver.switchTo().window(allWindows.get(2));

System.out.println(driver.getTitle());
driver.switchTo().defaultContent();

Upvotes: 2

Related Questions