반응형
그렇다. 나는야 자바 테스트코드 돌리는것도 익숙하지 않은 자바 쌩초보 ^-^
그래도 오늘 하나 배웠따 주말에 누워서 유튜브 보지 않고 성장했음에 만족. 기록해본다.
Java Main/Test
Java의 src 구조는 main과 test로 나뉜다
main에는 요구사항들을 구현한 모든 소스들이 들어가있고, test에는 main에서 구현한 애들을 시험해보기 위한 테스트코드들만이 들어가 있다.
Java Test 코드 구조
test코드의 경우, 영한님이 말씀하시길 given-when-then 구조로 나누면 좋다고 하셨다.
package hello.core.member;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
public class MemberServiceTest {
MemberService memberService = new MemberServiceImpl();
@Test
void join() {
//given
Member newMember = new Member(1L, "memberA", Grade.VIP);
//when
memberService.join(newMember);
Member findMember = memberService.findMember(1L);
//then
Assertions.assertEquals(newMember, findMember) ;
}
}
구분 | 설명 |
given | 주어진 상황에서 |
when | 이러한 일이 일어났을 때 |
then | 예상되는 결과 |
Java Test code 실행 방법
테스트 클래스 기준, 클래스를 전체 다 실행하여 해당 클래스 내부의 테스트 코드들을 모두 실행해볼 수 있다.
만약 특정 테스트 함수만 실행하고 싶다면, 그 함수만 따로 run 하면 된다.
Java Test code 결과
테스트가 잘 통과된다면, 아래와 같이 초록불이 뜨면서 별 말이 없다.
그러나 만약 테스트에 실패한다면, 노란불이 뜨면서 기대한 바는 이거였는데! 들어온 값은 이거야! 어쩌구저쩌구 말을 해 줄 것이다.
끝.
반응형
'잡다한 시리즈 > 개발' 카테고리의 다른 글
TDD를 배우고 경험해보며 쌓아가는 이야기 (0) | 2023.03.20 |
---|---|
[Git] core.autocrlf, IntelliJ Line Separators Warnings (0) | 2023.02.12 |
Apple M1 macOS Gradle 설치하기 (0) | 2021.12.15 |
Apple M1 macOS Oracle Java 17 또는 OpenJDK 설치하기 (10) | 2021.12.14 |