Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

307
Vistas
El nombre del contenedor de Cosmos DB con EL no se resuelve en SpringBootTest
@SpringBootTest(properties = {"spring.profiles.active=build"}, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)` @TestPropertySource(value = {"classpath:application-test.properties"}) @RunWith(SpringJUnit4ClassRunner.class) @EnableAutoConfiguration

Tengo las anotaciones que se muestran en mi prueba de integración. y la clase de entidad es como a continuación

 @Container(containerName = "Statuses-${spring.profiles.active}") public class MessageStatus implements Serializable

El nombre del contenedor se crea correctamente como Statuses-local en el entorno local y cuando se ejecuta la aplicación Spring Boot, pero esto no puede resolver el EL en el nombre del contenedor de cosmos DB cuando se ejecutan las pruebas. En su lugar, el contenedor se crea como Estados-${spring.profile.active}.

Ayuda, necesito esto para ejecutar pruebas usando el perfil de compilación y el nombre del contenedor resuelve correctamente el EL en él cuando se ejecuta la aplicación SpringBoot, PERO cuando se ejecutan mis pruebas de integración, esto se está comportando mal. ¿Algo que me esté perdiendo?

ACTUALIZACIÓN: tengo

 @SpringBootApplication DependsOn("expressionResolver")

en la clase de aplicación principal

Además, probé otra alternativa de obtener el nombre del contenedor de una función en un bean, pero esto nuevamente es intentar crear el nombre del contenedor como el código para resolver el nombre...

 @Container(containerName = "#{@MyBean.getMessageStatusContainerName()}") public class MessageStatus implements Serializable

Y esto, nuevamente, funciona bien cuando se ejecuta la aplicación SpringBoot, pero NO cuando se intenta ejecutar pruebas.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

había incluido la anotación

 @ContextConfiguration(classes = {TestContextConfig.class, MyClass1.class, MyClass2.class})

En la prueba de integración, mientras que ya tengo @EnableAutoConfiguration , y esa configuración "no estaba feliz" al crear el contexto de la aplicación de prueba, de modo que faltarían algunos beans necesarios y la resolución de EL no funcionaba.

SOLUCIÓN: Se eliminó la anotación: @ContextConfiguration(classes = ¡y todo funcionó como el fuego!

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda