-
Notifications
You must be signed in to change notification settings - Fork 0
[2.2.2] JUnit5로 UserDaoTest 작성
jsooOO edited this page Aug 8, 2021
·
3 revisions
// https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
// https://mvnrepository.com/artifact/org.hamcrest/hamcrest-all
testImplementation 'org.hamcrest:hamcrest-all:1.3'
jupiter는 junit5 라이브러리이고, hamcrest는 테스트 시 assertion을 자유롭게 커스텀할 수 있는 라이브러리를 제공한다.
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
// 방법 1
@Autowired
private ApplicationContext context;
@Test
void addAndGet(){
UserDao dao = context.getBean("userDao", UserDao.class);
dao.add(user);
...
}
// 방법 2 (권장)
@Autowired
private UserDao dao;
@Test
void addAndGet(){
dao.add(user);
...
}
JUnit5에서는 @Test(expected=...)를 지원하지 않고 assert로 예외 발생을 체크한다.
lambda 안에 예외가 발생하는 코드를 넣으면 된다.
assertThrows(EmptyResultDataAccessException.class, () -> {
...
});