일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Ajax
- 스토리지기본
- 롬복
- IT기본지식
- 서블릿용어
- 타임존
- EC@
- 서버기본
- api문서만들기
- import안될때
- 크리스탈레포트그림
- JDBC
- jdbc연결안됨
- git
- 자료구조
- 게시판댓글
- 크리스탈리포트이미지삽입
- fcmwebpush
- openaddressing
- 크리스탈리포트이미지
- 크리스탈레포트누끼
- RequestBody
- 오라클오류
- 이미지누끼
- 크리스탈레포트이미지
- lombok
- 추상클래스
- 타임존설정
- ResponseBody
- @RunWith
- Today
- Total
엠마의 개발공부일지
JUnit test를 해야하는이유 (일반 Java test코드랑 비교하기) 본문
실제 현업에서의 개발자들은 서비스에 적용될 코드보다 테스트코드를 작성하고 테스트하는데 많은 시간을 쓴다고 한다.
정상동작하는 코드부터, 오류가 날 코드까지 미리 다 테스트를 해보는데
그 코드를 JUnit으로 돌려본다고하니 엄청 중요한것같다.
그래서 일반 JAVA코드랑 JUnit코드를 비교해 보려고한다.
1. 일반Java로 작성한 Test
: 가입(join)한 정보와, 저장소에 저장된 정보를 가져와서 동일한지 확인해보는 test
[결과]
: 내가직접 println해서 어떤값이 들어왔는지 text를 확인해 봐야한다(test라고 하기엔 무리가있는 느낌이다)
코드가 간단하니 text확인이 간단하지만, 코드가 복잡해진다면 text를 일일이 확인하기엔 어렵다.
2. JUnit Test사용
: Test에서는 1)주어진환경(given) 2)시행하고자하는코드(when) 3)그 결과값(then)으로 나누어 작성한다
: 결과값을 테스트할때는 Test에서 사용가능한 Assertions를 사용하여 값을 비교해준다.
[결과]
: then에서 비교한 값이 일치하면 초록색, 아니면 주황색으로 표시가된다.
(그렇기때문에 일일이 text를 읽을 필요가없다)
*결론*
두 경우모두 코드에서 크게 차이가 나진않는다.
다만 JUnit테스트를 사용할경우 Assertions내장함수를 사용할 수 있고, 값을 비교하기위해 sysout하여 text를 작성할 필요가없다. 간단하게 내가 작성한 코드가 맞다 틀리다를 확인만 받으면되는데, 그걸 JUnit 테스트가 해준다!
[출처] 인프런 - 스프링 핵심 원리 강의에서 사용한 코드
'Stack > Java' 카테고리의 다른 글
isEqualTo vs isSameTo 비교(깨알 instanceof연산자내용 포함) (0) | 2020.12.09 |
---|---|
지네릭스(제네릭, Generics) 한장 정리 (0) | 2020.12.04 |
InputStream 사용법 (0) | 2020.10.29 |
인터페이스정리 및 추상클래스와 비교 (0) | 2020.10.29 |
추상메서드와 추상클래스 (0) | 2020.10.28 |