Spring Boot/Test Code
Junit5] MongoDB 테스트 환경 세팅
나른한 찰리
2023. 7. 17. 13:35
반응형
Spring Boot, Junit5에서 MongoDB 테스트 환경을 세팅하는 과정에서 발생한 오류 기록 정리
1. @SpringBootTest, @DataMongoTest 어노테이션을 동시에 사용할 수 없다.
- 참고링크: How to use these @DataMongoTest and @SpringBootTest together in integration test
- @AutoConfigureDataMongo, @SpringBootTest 어노테이션을 같이 사용
2. 실행 시에 test/resources/application.yml에 mongodb config 정보를 입력해야 한다.
- 입력하지 않으면 org.springframework. dao. DataAccessResourceFailureException: 오류 발생
- 주의! 여기서 uri 부분 주석을 해제하면, org.springframework.data.mongodb.UncategorizedMongoDbException: Exception authenticating MongoCredential 오류가 발생한다.
spring:
data:
mongodb:
host: [host]
port: 27017
authentication-database: admin
username: root
password: [password]
database: [mydatabase]
# uri: mongodb://username:password@localhost:27017/mydatabase
- uri 부분을 사용한다면, ?authSource=admin 을 추가한다.
mongodb://username:password@localhost:27017/mydatabase?authSource=admin
3. 테스트 데이터 롤백하기
- 기존에 JPA에서 사용하던 @Transactional, @Rollback(value = true)는 작동하지 않는다.
참고 링크
1. 참고링크1
2. 참고링크2
3. 참고링크3
4. 참고링크4
반응형