webelement org openqa library dependencias chromedriver java maven selenium-webdriver

java - org - selenium webdriver maven



"HasInputDevices" se encuentra en "/ org/openqa/selenium/interactions" pero todavía está mirando "/ org/openqa/selenium/" (3)

Encontré la solución que funcionó para mí. Estaba usando una dependencia que tenía una dependencia transitiva en Selenium-remote-driver versión 2.34.0, elimine esta dependencia y funcionará. Esta dependencia fue:

<dependency> <groupId>com.github.detro.ghostdriver</groupId> <artifactId>phantomjsdriver</artifactId> <version>1.1.0</version> </dependency>

O

<dependency> <groupId>com.github.detro.ghostdriver</groupId> <artifactId>phantomjsdriver</artifactId> <version>1.0.4</version> </dependency>

Quiero ejecutar mis casos de prueba de WebDriver en Chrome en el servidor remoto de Ubuntu . He instalado la última Chrome de Chrome en ese servidor pero he estado recibiendo estos errores cuando utilicé esto:

System.setProperty("webdriver.chrome.driver","/usr/bin/chromedriver"); driver = new ChromeDriver();

Error1:
The driver is not executable: /usr/bin/chromedriver para corregir lo hice ejecutable usando sudo 777 chromedriver luego obtuve
Error2:

org.openqa.selenium.WebDriverException: unknown error: Chrome failed to start: exited abnormally para arreglar esto. 2.40.0 selenium jar dependencies a 2.40.0 y desde entonces, he estado recibiendo
Error3:
java.lang.NoClassDefFoundError: org/openqa/selenium/HasInputDevices
Pregunta: Ahora sé que HasInputDevices se ha movido a org/openqa/selenium/Interactions/ entonces por qué todavía está buscando en la antigua ruta del directorio org/openqa/selenium/HasInputDevices . Cómo dejarlo encontrar en su directorio real.
1. He actualizado las dependencias.
2. He intentado usar mvn install para que descargue lo que está escrito en pom.xml
pero está buscando en el directorio anterior.
Cómo resolver este error, no quiero degradar las API de Selenium porque Chrome se cierra inesperadamente.


Tuve un problema similar, obteniendo ClassCastException donde HasInputDevices era incompatible con FirefoxDriver.

Resuelto al cambiar la importación a otro paquete: desde

import org.openqa.selenium.Mouse;

A

import org.openqa.selenium.interactions.Mouse;

La pila de errores exacta que encontré fue:

java.lang.ClassCastException: org.openqa.selenium.firefox.FirefoxDriver no se puede convertir en org.openqa.selenium.interactions.HasInputDevices.


Tuve el mismo problema y la forma de resolver fue el siguiente: eliminar todas las dependencias no utilizadas de POM.xml, por ejemplo, si usa FirefoxDriver y en POM.xml hay otras (Chrome, Common, remote) elimínelas.