Нажав ссылку убивает тест - PullRequest
0 голосов
/ 22 ноября 2010

Следующая команда

selenium.click("link=Identify Awards");

открывает всплывающее окно, но тест не продолжается

Я разместил

selenium.waitForPopUp(null, "1500");
selenium.windowFocus();
selenium.selectPopUp("Search -- Webpage Dialog");

После команды click безрезультатно ссылка на идет к функции Java.

Я знаю, что эта команда нажимает на ссылку, кнопку, флажок или переключатель. Если действие щелчка приводит к загрузке новой страницы (как обычно делает ссылка), вызовите waitForPageToLoad. Я думаю, что waitforPageToLoad не регистрирует загрузку всплывающих окон

Обновление

Я попробовал следующее

selenium.fireEvent("link=Identify Awards", "onClick");

и получил следующее

Всплывающее окно находится в другом домене, это может быть причиной?

Exception in thread "Main Thread" org.openqa.selenium.ie.UnexpectedJavascriptExecutionException: Cannot execute script
System info: os.name: 'Windows Vista', os.arch: 'x86', os.version: '6.1', java.version: '1.5.0_12'
Driver info: driver.version: ie
    at org.openqa.selenium.ie.ErrorHandler.verifyErrorCode(ErrorHandler.java:70)
    at org.openqa.selenium.ie.InternetExplorerDriver.executeScript(InternetExplorerDriver.java:205)
    at org.openqa.selenium.internal.seleniumemulation.JavascriptLibrary.callEmbeddedSelenium(JavascriptLibrary.java:47)
    at org.openqa.selenium.internal.seleniumemulation.FireEvent.handleSeleneseCommand(FireEvent.java:35)
    at org.openqa.selenium.internal.seleniumemulation.FireEvent.handleSeleneseCommand(FireEvent.java:1)
    at org.openqa.selenium.internal.seleniumemulation.SeleneseCommand.apply(SeleneseCommand.java:33)
    at org.openqa.selenium.internal.seleniumemulation.Timer.run(Timer.java:47)
    at org.openqa.selenium.WebDriverCommandProcessor.execute(WebDriverCommandProcessor.java:277)
    at org.openqa.selenium.WebDriverCommandProcessor.doCommand(WebDriverCommandProcessor.java:209)
    at com.thoughtworks.selenium.DefaultSelenium.fireEvent(DefaultSelenium.java:201)

Ответы [ 2 ]

1 голос
/ 31 января 2012

используйте selenium.selectWindow для выбора всплывающего окна, а затем используйте selenium.selectWindow(null) для выбора базового окна. Вы не описали, что это за всплывающее окно. Это окно подтверждения, или рамка, или диалоговое окно модели, или просто другое окно. Селен отличается в лечении всех этих

1 голос
/ 22 ноября 2010

Я обнаружил, что в некоторых случаях при запуске javascript, в частности, функция щелчка селена не вызывает команду elements onClick должным образом, и это может быть проблемой, с которой вы столкнулись.для явного запуска события onClick:

selenium.fire_event("link=Identify Awards", "onClick")

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...