significa ruta que proyecto obtener ejecuta donde configurar aplicacion java eclipse junit classpath

ruta - Java/Eclipse: ¿Cómo se configura el Classpath de la configuración de ejecución para la prueba JUnit?



obtener ruta donde se ejecuta la aplicacion java (2)

Si su clase WidgetTest está escrita como una prueba JUnit, eclipse intentará ejecutarla como una prueba de Junit automáticamente. Si no lo hace, debe hacer clic derecho en la clase en el explorador de paquetes, seleccionar Ejecutar como >> Configuración de ejecución >> elegir Junit

Para ejecutar una prueba de Junit:

  • en JUnit3, la clase debería implementar TestCase y todos los nombres de métodos deberían comenzar "test"

  • en JUnit4, todos los métodos deben ir precedidos de una anotación @Test

Para colocar ese archivo de configuración en la ruta de clase: al configurar la Configuración de ejecución como se indicó anteriormente, vaya a la pestaña Argumentos en el panel superior derecho y en los argumentos de VM especifique la ruta de clases:

-cp .:/path/to/the/config/file

Sin embargo, si ese archivo está en un paquete en el directorio de origen, debe incluirse automáticamente en el classpath.

Tengo un proyecto de Eclipse con la siguiente estructura de directorio:

MyProj/ src/main/java/ com.me.myproject.widgets Widget.java src/main/config widget-config.xml src/test/java com.me.myproject.widgets WidgetTest.java src/test/config widget-test-config.xml

La clase Widget lee su archivo de configuración (XML) desde cualquier lugar en el classpath y lo usa para configurar sus propiedades.

WidgetTest simplemente obtener los casos de prueba de WidgetTest (todos escritos con JUnit) para ejecutar dentro de Eclipse cuando hago clic con el botón derecho en el archivo y voy a Run As >> JUnit Test . Supongo que tendré que ejecutarlo realmente como una configuración de ejecución personalizada con su propio classpath configurado, pero no estoy seguro de eso ya que nunca he hecho esto antes.

¿Alguien sabe cómo puedo obtener una configuración de ejecución personalizada para ejecutar WidgetTest.java como una prueba JUnit, y colocar con éxito src/test/config/widget-test-config.xml en el classpath? ¡Gracias por adelantado!

Tenga en cuenta que esta pregunta no se trata de cómo leer un recurso de la ruta de clase de tiempo de ejecución, sino de cómo obtenerlo en el classpath de configuración de ejecución de JUnit de Eclipse.


Tenía la impresión de que, siempre que tenga src/test/config/widget-test-config.xml dentro de lo que Eclipse considera como una carpeta de origen, ya debería estar en el classpath.

¿Es src / test una carpeta fuente para Eclipse? Si es así y todavía tienes el problema, prueba el siguiente experimento:

Si copia widget-test-config.xml a la raíz del src ¿puede la clase Widget leerlo?

En caso afirmativo

entonces es un problema de que la carpeta de prueba no se encuentre en la ruta de clase y puede intentar agregarla manualmente de esa manera.

Haga clic con el botón derecho en WidgetTest y seleccione Run As -> Junit Test . Esto debería crear automáticamente una configuración de ejecución de Junit accesible en Run -> Run Configurations . Usted modifica su entrada de Classpath para agregar el proyecto que contiene el archivo .xml de la siguiente manera:

Si no

Si, incluso después de mover el archivo .xml a la raíz src (es decir, el paquete predeterminado), su clase de widget no puede leerlo, entonces hay algo más erróneo. En ese caso, sería genial si pudiera proporcionar el fragmento de código en WidgetTest que intenta leer el archivo .xml.

Código de trabajo

Aquí hay un poco de código de trabajo:

public class A { @Test public void test() { InputStream stream = A.class.getResourceAsStream("/SomeTextFile.txt"); System.out.println(stream != null); stream = Test.class.getClassLoader() .getResourceAsStream("SomeTextFile.txt"); System.out.println(stream != null); } }

Lo anterior funciona para mí en un proyecto simple de JAVA y funciona bien. (Funcionar bien significa ser ''verdadero'' impreso en la consola)

Estoy en el proceso de crear un repositorio GITHub para que pruebes este código sin problemas.

GIT Hub Repo con proyecto de prueba

Debería poder importar el proyecto en este zip y ver el código funcionando. Haga clic con el botón derecho en la Clase de prueba A y haga clic en Run As -> Junit Test , y debería ver dos true en la consola.