test logo example unit-testing maven junit

unit testing - logo - prueba de junit debe usar main/resources



mockito (2)

Tengo un problema con las pruebas de Maven y JUnit.

Tengo algunos archivos en src / main / resources y cuando ejecuto las pruebas de Junit quiero estos archivos. Solo un archivo de prueba específico con configuraciones ligeramente diferentes debe anular un archivo correspondiente. Así que mi idea fue darle a este archivo de prueba el mismo nombre que el archivo principal y ponerlo bajo src / test / resources en el mismo lugar (correspondiente) que el archivo principal. Pero ahora tengo el problema, que no puedo usar todos los demás archivos de src / main / resources.

Pensé que junit test los copiaría de forma predeterminada en target / test-classes / cuando se ejecutan con los archivos de src / test / resources, pero no es así. Solo existe el archivo de src / test / resources y no otro.

Gracias por cualquier idea, cómo podría solucionar este problema.

Aquí un ejemplo de cómo intento acceder a los archivos.

''

@BeforeClass public static void globalSetUp() throws NamingException, SQLException { System.setProperty("solr.solr.home", "/solr/"); cores = new CoreContainer( "/home/foo/workspace/reporting/target/test-classes/solr"); cores.load(); server = new EmbeddedSolrServer(cores, "reporting"); loadDriver(); connection = createAndConnectToDB(); createDBSchema(); }

''


El problema estaba en pom.xml. / main / resources no fue como testResource.

Aquí está el fragmento que resolvió mi problema:

<build> <testResources> <testResource> <directory>${project.basedir}/src/test/resources</directory> </testResource> <testResource> <directory>${project.basedir}/src/main/resources</directory> </testResource> </testResources> </build>


En realidad ambos están ahí / disponibles. Los archivos en src / main / resources y src / test / resources. Sin embargo, al cargar archivos desde la ruta de clase, cualquier archivo en src / test / resources tiene prioridad sobre los archivos en src / main / resources.

Resulta difícil responder completamente a su pregunta ya que no proporcionó muchos detalles (¿está utilizando ContextConfiguration? Si no es así, ¿cómo está cargando los archivos) pero le sugeriría que use un nombre diferente y cargue ese archivo explícitamente en el Prueba que lo necesita.

También podría tener el mismo nombre, pero todas las demás pruebas necesitarían usar explícitamente la ruta src / main / resources para cargar el archivo predeterminado.