2010-10-20 4 views
1

Привет, в основном я пытаюсь перейти во всплывающее окно, а затем нажать кнопку в этом всплывающем окне, но из somereaon я получаю erros.Переключение окон Selenium 2: Java

Вот пример веб-страницы

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

и вот мой код

Errers, что я получаю

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) 

С наилучшими пожеланиями

+0

Что ошибка вы получаем? «Я получаю ошибки» не объясняет, что пошло не так – AutomatedTester

ответ

3

Прежде всего, вы, вероятно, не переключаетесь в правильное окно. Вы повторяете все окна и переключаетесь на первую, которая может быть вашим основным окном.

Если всплывающее окно создается window.createPopup(), то вы не сможете переключиться на него - такие окна не поддерживаются Селен 2. Там некоторый прогресс в его реализации - см http://code.google.com/p/selenium/issues/detail?id=27

+0

Спасибо за anwser, я буду исследовать дальше –

+0

Ну, я использую диалоговое окно, и там arnt очень много альтернатив селена там –

+0

Что вы подразумеваете под диалоговым окном? Это JavaScript alert()? Можете ли вы опубликовать кусок html? –

1

Я заметил, что идентификатор, который вы ищете, это «ButtonCancle». Там есть опечатка. Возможно ли, что вы должны искать «ButtonCancel»?

+0

nop при попытке имени другой кнопки, например Accept Address, я все равно получаю то же сообщение об ошибке –