Embedded Mongo-demon startas med EmbeddedMongoAutoConfiguration
. Du kan inaktivera demonstart i ett enda test genom att utesluta EmbeddedMongoAutoConfiguration
från skanning:
@RunWith(SpringRunner.class)
@SpringBootTest
@TestPropertySource(properties = "spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.mongo.embedded.EmbeddedMongoAutoConfiguration")
public class DoNotStartMongoTest {
//...
@Test
public void test() {
}
}
Jag skulle föredra en motsatt funktionalitet:starta inbäddad Mongo-demon på begäran. För att göra detta måste du utesluta EmbeddedMongoAutoConfiguration
i produktionskod:
@EnableMongoRepositories
@SpringBootApplication(exclude = EmbeddedMongoAutoConfiguration.class)
public class MySpringBootApplication {
public static void main(String[] args) {
SpringApplication.run(MySpringBootApplication.class, args);
}
}
Lägg sedan till en kommentar i testkoden som kommer att aktivera inbäddad Mongo-demonstart:
@Retention(RUNTIME)
@Target(TYPE)
@Import(EmbeddedMongoAutoConfiguration.class)
public @interface EnableEmbeddedMongo {
}
Och kommentera ditt test:
@RunWith(SpringRunner.class)
@SpringBootTest
@EnableEmbeddedMongo
public class StartMongoTest {
//...
@Test
public void test() {
}
}