org.openqa.selenium.InvalidElementStateException: не удается выполнить собственное взаимодействие: не удалось загрузить собственный компонент событий - PullRequest
3 голосов
/ 21 марта 2012

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

Использование 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 

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

Спасибо.

Ответы [ 2 ]

5 голосов
/ 21 марта 2012

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

1 голос
/ 22 января 2013

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

Возможно, обновление до FF18, а селен-webdriver (2.29.0) может вам помочь.

...