Selen 2 Fenster Schalt: Java
-
09-10-2019 - |
Frage
Hallo im Grunde ich Schalter versuche zu einem Popup-Fenster und drücken Sie dann eine Taste an diesem Popup-Fenster aber aus somereaon ich erros bin immer.
Hier ist ein Beispiel der Webseite
http://i42.photobucket.com/albums/e326/limpep/ example.png
und hier ist mein 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 dass ich erhalte
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)
Mit freundlichen Grüßen
Lösung
Zu allererst Sie wechseln wahrscheinlich nicht auf das richtige Fenster. Sie sind alle Fenster laufen und an den ersten Schalen, die Ihr Hauptfenster sein könnte.
Wenn das Pop-up-Fenster von window.createPopup()
erstellt wird, dann werden Sie es nicht wechseln können - solche Fenster nicht von Selen unterstützt 2. Es gibt einige Fortschritte bei deren Umsetzung - siehe http://code.google.com/p/selenium/issues/detail?id=27
Andere Tipps
Ich stelle fest, dass die ID Sie suchen nach ist „ButtonCancle“. Es gibt dort eine falsche Schreibweise. Ist es möglich, dass Sie für „ButtonCancel“ suchen sollte?