2012-03-20 8 views
3

Я столкнулся с этой ошибкой при работе с версиями 2.15.0 и Firefox9 в Windows 7 с использованием привязок Java после обновления FF9 до FF10. Я пытался отключить родные события, как предлагалось в Интернете, но не повезло. После дальнейшего поиска решения в Интернете я обновил WebDriver до версии 2.17.0. Проблема была исправлена, и я не сталкивался с той же проблемой в какой-то момент. Снова я обновился до последней версии WebDriver, 2.19.0, и проблема была решена. Теперь я столкнулся с той же проблемой после обновления FF10 до 11. Я повысил до 2.20, но проблема была решена. Я отключил собственные события, как показано ниже, но я все еще получаю ошибку.org.openqa.selenium.InvalidElementStateException: не удается выполнить собственное взаимодействие: не удалось загрузить собственный компонент событий

Использование Java:

FirefoxProfile profile = new FirefoxProfile(); 
profile.setPreference("webdriver_enable_native_events", false); 
driver = new FirefoxDriver(profile); 

StackTrace (когда я пытаюсь переместить мышь, чтобы наведите курсор мыши на элемент):

org.openqa.selenium.InvalidElementStateException: Cannot perform native interaction: Could not load native events component. 
Command duration or timeout: 30.07 seconds 
Build info: version: '2.20.0', revision: '16008', time: '2012-02-28 15:00:40' 
System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.6.0_31' 
Driver info: driver.version: RemoteWebDriver 
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 
at java.lang.reflect.Constructor.newInstance(Unknown Source) 
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java: 170) 
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.­java: 123) 
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java: 438) 
at org.openqa.selenium.remote.ExecuteMethod.execute(ExecuteMethod.java: 47) 
at org.openqa.selenium.remote.RemoteMouse.mouseMove(RemoteMouse.java: 89) 
at org.openqa.selenium.interactions.MoveMouseAction.perform(MoveMouseAction.ja­va: 37) 
at org.openqa.selenium.interactions.CompositeAction.perform(CompositeAction.ja­va: 32) 
at org.openqa.selenium.interactions.Actions.perform(Actions.java:349) 
at com.requirementsLive.qa.utility.NavigateHelper.navigate_HoverPageTabs(Navig­ateHelper.java: 49) 

Мой код в NavigateHelper:

WebElement hoverMenu = uiHelper.waitForElementPresent(By.id(tabLocator), 10); 
Actions hoverAction = new Actions(this.getDriver()); 
hoverAction.moveToElement(hoverMenu); 
hoverAction.perform(); ------> line that throws the error 

Am I что-то не хватает? Есть ли постоянное исправление для этого в webdriver или мы должны обновиться до последнего веб-редактора (при условии, что он есть) каждый раз, когда есть обновление для FF? (обновление на данный момент не работает).

Спасибо.

ответ

1

Selenium 2.29.0 выпускается с поддержкой FF18 (для собственных событий). Вот ссылка для обновления: http://selenium.googlecode.com/git/rb/CHANGES.

Может быть, обновление до FF18 и selenium-webdriver (2.29.0) может вам помочь.

+0

Да. Я просто обновляюсь до последнего FF только после того, как последний веб-драйвер поддерживает эту версию FF. Благодаря! – Ziska

5

Я рекомендую использовать firefox 9 или 10, поскольку WebDriver 2.20.0 или 2.19.0 еще не полностью совместим с последней версией firefox.

+0

Да, я подумал об этом. Благодаря! Я только что установил FF10.0.2. Я могу успешно выполнить свои тесты. Проблема заключалась в том, что мой FF был настроен на автоматическое применение обновлений. Я отключил это, чтобы избежать такой же проблемы в будущем. – Ziska

+0

Привет, у меня была точно такая проблема. Я перешел на Firefox 10.0.2 и обновился до WebDriver 2.20.0. Ошибка исчезла, но зависание все еще не работает. Любой совет? – Spiff

+0

Можете ли вы предоставить более подробную информацию? Вы получаете исключение, например ElementNotVisibleException? Действие наведения не кажется мне последовательным. Такая же часть кода, которая работала раньше, может не работать в следующий раз. – Ziska