728x90
반응형
문제
MySQL로 DB를 구성하고, application.yml에 설정까지 한 상태에서 테스트를 돌려보니
@DataJpaTest를 실행하려고 했더니 아래와 같은 'Failed to replace DataSource ~~~' 에러가 발생합니다.
@DataJpaTest
class UserInfoRepositoryTest {
@Autowired
private UserInfoRepository userInfoRepository;
@Test
void 정보가져오기(){
List<UserInfo> all = userInfoRepository.findAll();
all.forEach(userInfo -> {
System.out.println(userInfo.getName());
});
}
}
원인
@AutoConfigureTestDatabase
해당 어노테이션은 @DataJpaTest에 내장되어 있으며, 이 어노테이션은 '내장된 메모리 데이터베이스'로 테스트를 진행시켜 줍니다.
반응형
해결
@AutoConfigureTestDatabase의 설정을 변경하여 내장된 메모리 데이터베이스로 변경하지 못하도록 막습니다.
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
@DataJpaTest
class UserInfoRepositoryTest {
@Autowired
private UserInfoRepository userInfoRepository;
@Test
void 정보가져오기(){
List<UserInfo> all = userInfoRepository.findAll();
all.forEach(userInfo -> {
System.out.println(userInfo.getName());
});
}
}
파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음
728x90
반응형
'Spring > JUnit & Test' 카테고리의 다른 글
[Mock과 Mocktio] @Mock @MockBean (0) | 2022.12.15 |
---|---|
[Mock과 Mocktio] @InjectMocks (0) | 2021.04.11 |
[Mock과 Mocktio] @Spy @SpyBean (0) | 2021.04.11 |
[JUnit4 vs JUnit5] @Test(expected=...) (0) | 2021.04.02 |
[JUnit5] RunWith (0) | 2021.02.28 |