Kontenery testowe zmapują port serwera MongoDB na losowy port na twoim komputerze. Dlatego nie możesz na stałe zakodować spring.data.mongodb.uri=mongodb://127.0.0.1:27017/test
w pliku właściwości.
Podstawowa konfiguracja z JUnit 5 i Spring Boot>=2.2.6 może wyglądać następująco
@Testcontainers
public class MongoDbIT {
@Container
public static MongoDBContainer mongoDBContainer = new MongoDBContainer();
@DynamicPropertySource
static void mongoDbProperties(DynamicPropertyRegistry registry) {
registry.add("spring.data.mongodb.uri", mongoDBContainer::getReplicaSetUrl);
}
}
Jeśli używasz innej wersji JUnit lub Spring Boot, zapoznaj się z poniższym przewodnikiem dotyczącym prawidłowa konfiguracja kontenerów testowych .