test java selenium selenium-webdriver testng

java - testng eclipse



Error: org.testng.TestNGException: no se puede encontrar la clase en classpath: EmpClass (24)

Cuando intento ejecutar el conjunto de pruebas, obtengo esta excepción. Estamos usando el proyecto de Maven aquí y he terminado de actualizar, limpiar, reinstalar testNG y luego importar los proyectos de Maven, pero luego también obtengo la misma excepción. Por favor, sugiera las formas que faltan aquí.

Consola de errores:

org.testng.TestNGException: Cannot find class in classpath: EmpClass at org.testng.xml.XmlClass.loadClass(XmlClass.java:81) at org.testng.xml.XmlClass.init(XmlClass.java:73) at org.testng.xml.XmlClass.<init>(XmlClass.java:59) at org.testng.xml.TestNGContentHandler.startElement(TestNGContentHandler.java:543) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509) at com.sun.org.apache.xerces.internal.parsers.AbstractXMLDocumentParser.emptyElement(AbstractXMLDocumentParser.java:182) at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.emptyElement(XMLDTDValidator.java:766) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1350) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2778) at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333) at javax.xml.parsers.SAXParser.parse(SAXParser.java:195) at org.testng.xml.XMLParser.parse(XMLParser.java:39) at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:17) at org.testng.xml.SuiteXmlParser.parse(SuiteXmlParser.java:10) at org.testng.xml.Parser.parse(Parser.java:168) at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:311) at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:88) at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204) at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)


Consiguió que el IDE volviera a funcionar. La solución es bastante divertida, e incluso una reinstalación, y eliminar el IDE no lo soluciona en Windows. Lo que debe hacer en ese caso es ir a las configuraciones de ejecución de testNG y eliminarlas todas. Esto es para el error de classpath de TestNG XML en el sistema operativo Windows. Estoy usando el conjunto de herramientas de primavera 3.6.4.

Asegúrese de eliminar todas las configuraciones, asegúrese de que el proyecto pueda compilarse y, si no hay problemas, la prueba debería ejecutarse ahora.

Saludos -Anthony Toorie


Después de hacer todo lo que encontré en este problema, en eclipse,

Seleccioné mi proyecto -> clic derecho -> Ejecutar como -> fuentes generadas de Maven

Luego volví a ejecutar mi proyecto de TestNG y funcionó perfectamente bien sin ningún problema. Espero que esto ayude :)


En el archivo testng.xml, elimine "." de la etiqueta "" nombre de clase si no está utilizando paquetes.


En mi caso, importé el proyecto maven como proyecto existente predeterminado en eclipse. Después de que importé como proyecto maven. Eso funcionó para mí.


En mi opinión, si src tiene pruebas / java / carpetas, en la ruta de compilación, la ubicación debería ser como destino / clases de prueba.

Si src tiene main / java / folder, en la ruta de compilación, la ubicación debería ser como target / classes.


Este problema se puede resolver agregando el paquete TestNG.class al paquete OnlineStore como se muestra a continuación

  1. Paso 1: Crear ruta> Configurar ruta de construcción> Java Crear ruta> Seleccione la pestaña "Proyecto"
  2. Paso 2: Haga clic en el botón "agregar" y seleccione el proyecto que contiene la fuente de TestNG.
  3. Paso 3 selecciona TestNG.xml ejecutado como "TestNG Suite"

Me encontré con el mismo problema mencionado anteriormente hoy. ** configurando la ruta de clase nuevamente en eclipse ** resolvió el problema.


Me enfrenté al problema similar en la importación de maven con el proyecto testng. Esto se resolvió convirtiéndolo nuevamente en el proyecto TestNg por

haga clic derecho en el proyecto Eclipse> TestNG> Convertir a TestNG

y reemplazando el archivo testng.xml existente con el recién creado. Limpie y actualice el proyecto maven con mvn install

Nota: haga una copia de seguridad de su testng.xml


Mis 2 centavos por el problema: estaba experimentando el mismo problema, mientras que una parte de mi camino estaba en cirílico. Así que revisa la ruta de tu proyecto para encontrar caracteres especiales. Una vez que quité esto, el problema fue solucionado


No tuve problemas con esto hasta hace poco.

Ahora tenía que mover el archivo de prueba xml de la suite a la raíz del proyecto que estaba probando.

Puede ser que haya una configuración para señalar las clases que estoy evaluando, pero no la he encontrado.


Nota: debe especificar el nombre de la clase junto con los paquetes como se indica a continuación.

<suite name="testNGLearning"> <test name="simpleTest"> <classes> <class name="testngTests.TestNGSimpleTest" /> <class name="testngTests.TestMessageUtil" /> </classes> </test> </suite>


Para mí fue que agregué la casilla de verificación Omitir pruebas en la compilación de Maven del proyecto

Por lo tanto, las clases de prueba no fueron compiladas y luego no fueron encontradas por TestNG


Para mí, el problema fue porque excluí la prueba de la compilación en el POM. Mi pom.xml se veía así:

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <source>1.8</source> <target>1.8</target> <testExcludes> <exclude>com/mycompany/app/AppTest.java</exclude> </testExcludes> </configuration> </plugin>

Después de eliminar <exclude> , pude ejecutar las pruebas en AppTest.java nuevamente.


Para mi el problema era muy extraño.
Tengo un archivo testng.xml en la raíz de mi proyecto de Eclipse. Cuando cambié el archivo a través de Eclipse, no estaba cambiando el archivo testng.xml en mi directorio.

Resulta que hizo una copia de la carpeta en el espacio de trabajo del eclipse ...

Espero que esto ayude a alguien


Proyecto >> Clean and Maven >> Proyecto de actualización funcionó para mí


También me encontré con el mismo problema con TestNG versión 6.14.2

Sin embargo, esto se debió a un error tonto de mi parte y no hay ningún problema con el experto, la prueba o el eclipse. Lo que estaba haciendo era ...

  1. Ejecutar el proyecto como "mvn clean"
  2. Seleccione el archivo "testng.xml" y haga clic con el botón derecho en él para ejecutarlo como conjunto de pruebas
  3. Esto me estaba dando el mismo error que se informó en la pregunta original
  4. Pronto me di cuenta de que no he compilado el proyecto y que no se han generado los archivos de clase requeridos que el TestNG utilizará posteriormente
  5. La carpeta "destino" se generará solo después de compilar el proyecto (Ejecutar como "mvn build")
  6. Si su proyecto está compilado, este problema no debería estar allí.

También tengo la misma excepción:

He intentado los siguientes pasos:

  1. En Eclipse> Proyecto> Limpiar. (La excepción se mantuvo)

  2. Ejecuté otro proyecto (El testng.xml se ejecutó con éxito)

Después de ejecutar otro proyecto, ejecuté el proyecto en el que recibía la excepción y, afortunadamente, funcionó para mí, sin errores.


Tienes que editar tus pruebas del archivo xml Runner. Vea este ejemplo:

<test name="Employees Test"> <classes> <class name="packagename.classname"> </class> </classes> </test>

En la fila <class name="packagename.classname"> debe ingresar el nombre de su paquete de pruebas y luego el nombre de la clase que desea ejecutar.

Gracias y te deseo lo mejor.


Tuve el mismo error cuando intenté ejecutar mis pruebas en un proyecto JSF.

Estoy usando Eclipse IDE (kepler). Entonces, hice "proyectar> limpiar" y luego volví a ejecutar las pruebas del mismo proyecto.

¡Funcionó!


Tuve el mismo problema cuando estaba usando la dependencia de selenio 3.11.xx sin embargo, mi problema se resolvió cuando usé la dependencia de selenio 3.4.x.


Tuve este mismo problema cuando importé mi proyecto de una PC a otra en IntelliJ IDEA.

A continuación la solución funcionó para mí:

  1. Importar proyecto usando Git.
  2. Después de importar el IDE, aparecerá un cuadro de diálogo en la esquina inferior derecha que dice "Importar como Gradle", debe seleccionar eso, pero asegúrese de haber configurado JAVA_HOME y GRADLE (ambos, Gradle Home o Gradle wrapper) deberían funcionar correctamente.
  3. Ejecute build.gradle y asegúrese de que todas las dependencias se descarguen correctamente sin ningún error.
  4. Ahora pase a su caso de prueba e intente ejecutar con TestNG o JUnit y si ha seguido los 3 pasos anteriores correctamente, debería poder ejecutar el caso de prueba.

Tuve un problema similar y el proyecto tuvo algunos errores de compilación. Hice sudo -R 777 para el proyecto y luego limpié mi proyecto. Después de eso funcionó bien.

Espero eso ayude.


Vaya a Proyecto> Crear ruta> Configurar ruta de construcción> Bibliotecas> Eliminar bibliotecas de errores

Después de actualizar el proyecto y ejecutar el programa de nuevo.


incluir el nombre del paquete con la clase. Se eliminará tu nombre. También tuve el mismo problema pero al agregar el nombre del paquete con la clase se solucionó este problema.