일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- AWS
- MySQL
- EC2
- error
- 백엔드
- 성능테스트
- backend
- nGrinder
- 자바백엔드
- java
- 로드밸런서
- 도커
- 레디스
- Flutter
- 멘토링
- F-Lab
- 자바
- 알고리즘
- grafana
- 에프랩
- 트러블슈팅
- 데이터구조
- Spring
- github
- redis
- 부트캠프
- 코딩테스트
- FLAB
- 플러터
- 후기
- Today
- Total
민스씨의 일취일장
IntelliJ | Java 프로젝트 생성 후 테스트 코드까지 작성해보기 본문
IntelliJ | Java 프로젝트 생성 후 테스트 코드까지 작성해보기
읻민스 2024. 5. 1. 19:31인텔리제이에서 Java 프로젝트를 생성하고 테스트 코드까지 작성해 보는 과정에 대한 글이다.
IntellinJ에서 Java 프로젝트 생성 후 테스트 코드까지 작성해보기
프로젝트 생성하기
인텔리제이를 실행해 New Project 버튼을 눌러 준다.
프로젝트 이름을 작성하고 저장할 공간을 선택한다. Java 프로젝트 이므로 Java를 선택하고, 빌드 툴은 Gradle을 선택했다. JDK는 자바 버전을 뜻하고, 17을 선택했다. Gradle DSL은 Kotlin을 선택해 주었다.
이렇게 한 뒤 create 버튼을 눌러주면 프로젝트 생성은 완료된다.
테스트 코드 작성하기
이렇게 프로젝트를 생성한 뒤 간단하게 패키지 하나를 만들고 그 안에 클래스 하나를 생성해 준다. 테스트 코드를 위해선 함수가 있어야 한다. 아래는 간단하게 스트링 2개를 이어 붙이는 메서드를 만들었다.
이제 부터 테스트 코드를 생성할 것이다. 테스트하고 싶은 클래스 내에서 마우스 오른쪽 버튼을 누른다. 여기서 Generate 버튼을 눌러준다. 그럼 여러가지 항목이 뜨는데 여기서 Test... 버튼을 눌러준다.
그럼 아래와 같이 어떤 라이브러리를 이용해서 테스트 코드를 작성할 것인지 묻는 창이 나온다. 여기서는 JUnit5를 활용할 것이다. 아래 Member 항목에서 테스트 코드를 작성할 대상을 선택할 수 있다.
올바르게 선택한 뒤 OK 버튼을 눌러주면 자동으로 test 디렉토리 내에 패키지들과 테스트 클래스가 생성된다.
이제 생성된 메서드 내에 어떤 내용을 테스트 할 것이지 작성해 주면 된다. 시나리오는 given, when, then을 따를 것이다.
- given
given에서는 테스트에 활용할 데이터를 제시해준다.
- when
when에서는 테스트할 중점 액션이 실행된다. 위의 경우에는 stringBinder 메서드가 실행되는 것이 중점 액션이다.
- then
when에서 발생한 결과가 코드 작성한 의도와 맞는지 판별해준다. 여기서 결과값을 직접 작성해 줘야 한다.
이와 같이 모두 작성한 뒤 테스트 클래스 또는 메서드 옆의 초록색 재생 버튼을 눌러 테스트 코드를 실행해 볼 수 있다. 클래스 옆의 버튼을 누르면 클래스 내의 모든 테스트 메서드가 실행되고, 메서드 옆의 버튼을 누르면 테스트 메서드 하나만 단독으로 실행된다.
위의 결과를 보면 메서드가 성공적으로 실행되었고, 메서드도 예상한 대로 작동한 것을 확인할 수 있다.
코드
위 내용의 코드는 아래 링크에서 확인할 수 있다.
'Programming Language & Framework > JAVA & Spring' 카테고리의 다른 글
Thymeleaf | 재실행 없이 변경사항 반영되도록 하는 방법 (0) | 2024.11.19 |
---|---|
YdMinS | 스프링 IoC와 DI에 대해서 (0) | 2024.07.10 |
TIssue | Postman에서 요청을 보냈는데 Controller에 도달을 안하는 이슈 (0) | 2024.03.04 |
TIssue | Java | error: reached end of file while parsing (0) | 2023.06.01 |
TIssue | IntelliJ | assertThat 임포트 안될 때 (0) | 2023.05.01 |