libreria java command-line testng command-prompt

java - libreria - Cómo ejecutar TestNG desde la línea de comandos



testng c# (8)

Deberá usar el punto y coma como delimitador al especificar la ruta del archivo jar y class en Windows. Esto solucionó el problema.
Suponiendo que el archivo de clase está bajo C :.

java -cp ".;C:/testng.jar" org.testng.TestNG testing.xml

¿Cómo ejecuto exactamente un proyecto .java TestNG desde una línea de comandos?

He leído la documentación de TestNG y he intentado lo siguiente sin éxito:

C:/projectfred> java org.testng.TestNG testng.xml

... con el siguiente archivo testng.xml en mi proyecto:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name="SuiteAll" verbose="1"> <test name="TestAll"> <packages> <package name="com.project.fred.tests"/> </packages> </test> </suite>

El error que recibo es este:

Exception in thread "main" java.lang.NoClassDefFoundError: org/testng/TestNG Caused by: java.lang.ClassNotFoundException: org.testng.TestNG at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) Could not find the main class: org.testng.TestNG. Program will exit.

Obviamente, no estoy haciendo referencia a TestNG correctamente en mi línea de comandos. ¿Alguien sabe cómo hacer que esto funcione?


El siguiente comando funciona para mí. Siempre que todos los frascos requeridos, incluido el frasco testng, se mantengan dentro de lib.

java -cp "lib/*" org.testng.TestNG testng.xml


El uso de ";" como delimitador en el problema de Windows se resolvió.

java -cp "path of class files; testng jar file path" org.testng.TestNG testng.xml

ex:-

java -cp "./bin;../common_lib/*;" org.testng.TestNG testng.xml


Me había enfrentado a algún problema porque descargué el complemento TestNG de Eclipse. Aquí lo que hice para hacer el trabajo:

  1. Después de agregar TestNG a su biblioteca de proyectos, cree una carpeta en los nombres de sus proyectos como lib (el nombre puede ser cualquier cosa):

  2. Vaya a la ubicación "C: / Archivos de programa / Eclipse / eclipse-java-mars-R-win32-x86_64 / eclipse / y copie el archivo com.beust.jcommander_1.72.0.jar y org.testng_6.14.2.r20180216145.jar a la carpeta creada (lib).

Nota: los archivos son testng.jar y jcommander.jar

  1. Ahora inicie CMD, navegue a su directorio de proyecto y luego escriba:
    Java -cp C: / Users / User123 / TestNG / lib *; C: / Users / User123 / TestNG / bin org.testng.TestNG testng.xml

Eso es !
Déjame saber si tienes más preocupaciones.


Muchas gracias, fue realmente muy útil. Pude ejecutar mis clases de TestNG usando la línea de comandos, pero aún así me gustaría resumir las cosas una vez más como sigue ...

1) Set the classpath for the testng.jar in the environment variables (either manually or via command line). 2) Create a new folder "MyTest". 3) Compile all your classes(testNG+java) and put them(.class files ) in a new folder "Mytest/bin". 4) Put your ''testng.xml'' and ''.properties'' files to "Mytest/bin" again. 5) Put all the .jar files (testng,selenium... etc) in a new folder "Mytest/lib". 6) Browse to the folder "bin" via command line and run the command java -cp "../lib/*;" org.testng.TestNG testng.xml

Esto debería ejecutar sus casos de testNG.


Necesitas tener el testng.jar bajo classpath.

pruebe C:/projectfred> java -cp "path-tojar/testng.jar:path_to_yourtest_classes" org.testng.TestNG testng.xml

Actualizar:

Bajo Linux ejecuté este comando y sería algo similar en Windows

test/bin# java -cp ".:../lib/*" org.testng.TestNG testng.xml

Estructura de directorios:

/bin - All my test packages are under bin including testng.xml /src - All source files are under src /lib - All libraries required for the execution of tests are under this.

Una vez que compilo todas las fuentes van bajo el directorio bin. Por lo tanto, en el classpath, necesito especificar el contenido del directorio bin y todas las bibliotecas como testng.xml, loggers, etc. aquí. También copie testng.xml en la carpeta bin si no desea especificar la ruta completa donde está disponible el testng.xml.

/bin -- testng.xml -- testclasses -- Properties files if any. /lib -- testng.jar -- log4j.jar

Update :

Vaya a la carpeta MyProject y escriba ejecutar el comando java como se muestra a continuación:

java -cp ".: C:/Program Files/jbdevstudio4/studio/plugins/*" org.testng.TestNG testng.xml

Creo que el archivo testng.xml se encuentra en C:/Users/me/workspace/MyProject lo contrario, indique la ruta completa para el archivo testng.xml


Ok, después de 2 días de intentar averiguar por qué no pude ejecutar el ejemplo desde

http://www.tutorialspoint.com/testng/testng_environment.htm el siguiente código no me funcionó

C:/TestNG_WORKSPACE>java -cp "C:/TestNG_WORKSPACE" org.testng.TestNG testng.xml

La solución para esto es la siguiente: Llegué a la siguiente conclusión: primero instale eclipse y descargue el complemento TestNG. Después de eso, siga las instrucciones del tutorial para crear y compilar la clase de prueba desde cmd usando javac, y agregue el testng.xml. Para ejecutar el testng.xml en Windows 10 cmd, ejecute la siguiente línea:

java -cp C:/Users/Lenovo/Desktop/eclipse/plugins/org.testng.eclipse_6.9.12.201607091356/lib/*;C:/Test org.testng.TestNG testng.xml

para aclarar: C:/Users/Lenovo/Desktop/eclipse/plugins/org.testng.eclipse_6.9.12.201607091356/lib/* La ruta anterior representa la ubicación de jcommander.jar y testng.jar que descargó al instalar el TESTNG plugin para eclipse. La ruta puede variar, así que asegúrese de abrir la ubicación de instalación de eclipse, vaya a los complementos y busque jcommander.jar. Luego copie esa ubicación y luego agregue * para seleccionar todos los .jars necesarios.

C:/Test

La ruta anterior representa la ubicación del testing.xml en su proyecto. Después de obtener todos los caminos necesarios, agréguelos usando ";".

Espero haber sido de ayuda para algunos de ustedes :)


Prepare el archivo MANIFEST.MF con el siguiente contenido

Manifest-Version: 1.0 Main-Class: org.testng.TestNG

Empaque todas las clases de prueba y dependencia en el mismo jar, digamos tests.jar

jar cmf MANIFEST.MF tests.jar -C folder-with-classes/ .

Observe que se arrastra ".", Reemplace folder-with-classes/ con el nombre o ruta de la carpeta correspondiente.

Crea testng.xml con contenido como abajo

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name="Tests" verbose="5"> <test name="Test1"> <classes> <class name="com.example.yourcompany.qa.Test1"/> </classes> </test> </suite>

Reemplace com.example.yourcompany.qa.Test1 con ruta a su clase de prueba.

Ejecuta tus pruebas

java -jar tests.jar testng.xml