0

J'utilise le sélénium 3.5.3 et la boîte de sélénium autonome. Je suis en train de planer un élément avec le code suivant:Obtenir org.openqa.selenium.UnsupportedCommandException: mouseMoveTo

RemoteWebDriver driver = null; 
DesiredCapabilities dc = new DesiredCapabilities(); 
dc.setCapability("browserName", "firefox"); 
dc.setCapability("version", "55"); 
dc.setCapability("auth",GlobalProperties.seleniumboxAuthKey()); 
try { 
    driver = new RemoteWebDriver(new 
URL("http://myseleniumboxurl.com/wd/hub"), dc); 
} 
catch (MalformedURLException e) { 
    System.out.println(e); 
} 
driver.get("https://github.com/SeleniumHQ"); 
Actions action = new Actions(driver); 
WebElement elem = driver.findElement(By.xpath("//a[contains(@href, '/pricing')]")); 
action.moveToElement(elem).perform(); 

Je reçois exception suivante: Causée par: org.openqa.selenium.UnsupportedCommandException: mouseMoveTo

at org.openqa.selenium.remote.http.AbstractHttpCommandCodec.encode(AbstractHttpCommandCodec.java:220) 
at org.openqa.selenium.remote.http.AbstractHttpCommandCodec.encode(AbstractHttpCommandCodec.java:118) 
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) 
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:82) 
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:637) 
at org.openqa.selenium.remote.RemoteExecuteMethod.execute(RemoteExecuteMethod.java:35) 
at org.openqa.selenium.remote.RemoteMouse.mouseMove(RemoteMouse.java:89) 
at org.openqa.selenium.support.events.internal.EventFiringMouse.mouseMove(EventFiringMouse.java:58) 
at org.openqa.selenium.remote.server.handler.interactions.MouseMoveToLocation.call(MouseMoveToLocation.java:59) 
at org.openqa.selenium.remote.server.handler.interactions.MouseMoveToLocation.call(MouseMoveToLocation.java:32) 
at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
at org.openqa.selenium.remote.server.DefaultSession$1.run(DefaultSession.java:176) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
at java.lang.Thread.run(Thread.java:748) 

Toute solution ou solution possible S'il vous plaît?

+0

Sur quelle ligne l'exception est-elle levée? –

+0

Mettez à jour le pilote firefox ... Ensuite, vérifiez-le et faites le moi savoir – zsbappa

+0

@PaulKertscher Une exception est levée sur action.moveToElement (elem) .perform(); –

Répondre

0

Dans Selenium 3.5.0, le déplacement de la souris ne fonctionne pas correctement. Vous pouvez donc utiliser des bibliothèques de scripts Java et utiliser une commande de script Java pour déplacer la souris sur l'élément

+0

J'ai essayé d'utiliser String moveTo = "var fireEvent = arguments [0];" + "var evObj = document.createEvent ('MouseEvents');" + "evObj.initEvent ( 'mouseover', vrai, vrai);" + "fireEvent.dispatchEvent (evObj);"; driver.executeScript (moveTo, élément); Cela ne fonctionne pas non plus. Pouvez-vous s'il vous plaît suggérer? –

+0

Non, vous pouvez mettre à jour la version du navigateur et la version sélénium. Maintenant, ça fonctionne bien. –