민스씨의 일취일장

IntelliJ | Java 프로젝트 생성 후 테스트 코드까지 작성해보기 본문

Programming Language & Framework/JAVA & Spring

IntelliJ | Java 프로젝트 생성 후 테스트 코드까지 작성해보기

읻민스 2024. 5. 1. 19:31
반응형

인텔리제이에서 Java 프로젝트를 생성하고 테스트 코드까지 작성해 보는 과정에 대한 글이다.

IntellinJ에서 Java 프로젝트 생성 후 테스트 코드까지 작성해보기

자바 프로젝트 생성, 테스트 코드 작성 @IntelliJ 썸네일 이미지이다.
Java 프로젝트 생성 테스트 코드 작성 @IntelliJ

프로젝트 생성하기

인텔리제이를 실행해 New Project 버튼을 눌러 준다.

프로젝트 이름을 작성하고 저장할 공간을 선택한다. Java 프로젝트 이므로 Java를 선택하고, 빌드 툴은 Gradle을 선택했다. JDK는 자바 버전을 뜻하고, 17을 선택했다. Gradle DSL은 Kotlin을 선택해 주었다.

intellij 프로젝트 생성 창 모습이다.
프로젝트 생성

이렇게 한 뒤 create 버튼을 눌러주면 프로젝트 생성은 완료된다.

테스트 코드 작성하기

이렇게 프로젝트를 생성한 뒤 간단하게 패키지 하나를 만들고 그 안에 클래스 하나를 생성해 준다. 테스트 코드를 위해선 함수가 있어야 한다. 아래는 간단하게 스트링 2개를 이어 붙이는 메서드를 만들었다. 

테스트 코드를 작성할 대상인 클래스와 메서드를 작성해준 모습이다.
클래스 작성

이제 부터 테스트 코드를 생성할 것이다. 테스트하고 싶은 클래스 내에서 마우스 오른쪽 버튼을 누른다. 여기서 Generate 버튼을 눌러준다.  그럼 여러가지 항목이 뜨는데 여기서 Test... 버튼을 눌러준다.

마우스 우클릭으로 메뉴를 띄워 Generate 메뉴를 선택한 모습이다.Generate 메뉴를 선택한 뒤 내부 메뉴가 뜬 모습이다. Test...가 선택돼 있다.
테스트 클래스 생성

 

그럼 아래와 같이 어떤 라이브러리를 이용해서 테스트 코드를 작성할 것인지 묻는 창이 나온다. 여기서는 JUnit5를 활용할 것이다. 아래 Member 항목에서 테스트 코드를 작성할 대상을 선택할 수 있다.

테스트 클래스 생성 전 세팅하는 창 모습이다.
테스트 클래스 세팅

올바르게 선택한 뒤 OK 버튼을 눌러주면 자동으로 test 디렉토리 내에 패키지들과 테스트 클래스가 생성된다.

IntelliJ가 간편하게 테스트 클래스를 생성해준 모습이다.
테스트 클래스

이제 생성된 메서드 내에 어떤 내용을 테스트 할 것이지 작성해 주면 된다. 시나리오는 given, when, then을 따를 것이다.

테스트 코드를 given, when, then 시나리오로 작성한 모습이다.
테스트 코드 작성

  • given

given에서는 테스트에 활용할 데이터를 제시해준다.

  • when

when에서는 테스트할 중점 액션이 실행된다. 위의 경우에는 stringBinder 메서드가 실행되는 것이 중점 액션이다.

  • then

when에서 발생한 결과가 코드 작성한 의도와 맞는지 판별해준다. 여기서 결과값을 직접 작성해 줘야 한다.

 

이와 같이 모두 작성한 뒤 테스트 클래스 또는 메서드 옆의 초록색 재생 버튼을 눌러 테스트 코드를 실행해 볼 수 있다. 클래스 옆의 버튼을 누르면 클래스 내의 모든 테스트 메서드가 실행되고, 메서드 옆의 버튼을 누르면 테스트 메서드 하나만 단독으로 실행된다.

테스트 코드가 성공적으로 실행된 모습이다.
테스트 코드 실행

위의 결과를 보면 메서드가 성공적으로 실행되었고, 메서드도 예상한 대로 작동한 것을 확인할 수 있다.

코드

위 내용의 코드는 아래 링크에서 확인할 수 있다.

 

GitHub - YdMinS/Practices-Github-Actions-TEST-01: For purpose to practice Github Actions

For purpose to practice Github Actions. Contribute to YdMinS/Practices-Github-Actions-TEST-01 development by creating an account on GitHub.

github.com

 

728x90
반응형