Ho la mia configurazione nel file application.yml nella radice di classpath (src/main/resources /). La configurazione viene caricata correttamente quando avvio l'applicazione normalmente. Tuttavia nel mio test il file application.yml non viene caricato affatto.Spring Boot MockMVC Test non carica il file Yaml
L'intestazione del mio test sembra come segue:
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration(classes = Configuration.class)
@org.junit.Ignore
public class ApplicationIntegrationTest {
@Inject
private WebApplicationContext wac;
private MockMvc mockMvc;
@Before
public void setup() {
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build();
}
...
La classe di configurazione:
@EnableAutoConfiguration
@ComponentScan("c.e.t.s.web, c.e.t.s.service")
public class Configuration extends WebMvcConfigurerAdapter {
Quando il debug dell'applicazione vedo che i file YML vengono caricati in ConfigFileApplicationListener, nel test tuttavia, ConfigFileApplicationListener non viene chiamato.
Poiché si sta facendo male. Dovresti usare '@ SpringApplicationConfiguration' invece di' @ ContextConfiguration'. Come spiegato in [guida di riferimento] (http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-testing.html#boot-features-testing-spring-boot-applications). –
Hai ragione! Grazie! Se potessi fare una risposta, sarei felice di accettarla. – leo