Question

Hi basically I am trying to switch to a popup window then press a button on that popup window but from somereaon I am getting erros.

Here is an example of the webpage

http://i42.photobucket.com/albums/e326/limpep/example.png

and here is my code

 for (String handle : driver.getWindowHandles()) {
                                 driver.switchTo().window(handle);

                               }


                       WebElement clicksa  =
driver.findElement(By.id("ButtonCancle"));
                           clicksa.sendKeys(Keys.ENTER);
                           driver.switchTo().defaultContent();

Errers that i am getting

    Exception in thread "AWT-EventQueue-0" org.openqa.selenium.NoSuchElementException: Unable to find element by id using "Accept Address" (7)
System info: os.name: 'Windows XP', os.arch: 'x86', os.version: '5.1', java.version: '1.6.0_21'
Driver info: driver.version: ie
    at org.openqa.selenium.ie.ErrorHandler.verifyErrorCode(ErrorHandler.java:38)
    at org.openqa.selenium.ie.Finder.handleErrorCode(Finder.java:252)
    at org.openqa.selenium.ie.Finder.findElementById(Finder.java:126)
    at org.openqa.selenium.By$1.findElement(By.java:66)
    at org.openqa.selenium.ie.Finder.findElement(Finder.java:240)
    at org.openqa.selenium.ie.InternetExplorerDriver.findElement(InternetExplorerDriver.java:297)
    at com.capscanWebServers.CRMTesting$2.actionPerformed(CRMTesting.java:112)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
    at java.awt.Component.processMouseEvent(Unknown Source)
    at javax.swing.JComponent.processMouseEvent(Unknown Source)
    at java.awt.Component.processEvent(Unknown Source)
    at java.awt.Container.processEvent(Unknown Source)
    at java.awt.Component.dispatchEventImpl(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
    at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
    at java.awt.Container.dispatchEventImpl(Unknown Source)
    at java.awt.Window.dispatchEventImpl(Unknown Source)
    at java.awt.Component.dispatchEvent(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)

Kind Regards

Was it helpful?

Solution

First of all, you are probably not switching to the correct window. You are iterating all windows and switching to the first one which could be your main window.

If the pop-up window is created by window.createPopup() then you will not be able to switch to it - such windows are not supported by Selenium 2. There's some progress in implementing it - see http://code.google.com/p/selenium/issues/detail?id=27

OTHER TIPS

I notice that the id you're searching for is "ButtonCancle". There's a misspelling there. Is it possible that you should be looking for "ButtonCancel"?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top