Intellij에서 JUnit 라이브러리를 추가하고 단위테스트를 실행하는 과정입니다.
Java 프로젝트를 만들고 간단한 프로그램을 작성해 테스트를 진행했습니다.
Intellij에서 Java 프로젝트를 생성하는 방법을 모르시면 아래 링크를 참고합니다.
Intellij Java Project 생성해 Hello world 출력하기
자세한 코드는 아래 깃허브를 참고합니다.
테스트 코드를 위한 디렉터리생성
먼저 테스트 코드를 관리 할 디렉터리를 생성합니다.
프로젝트를 우클릭합니다.
[New] - [Directory] 를 클릭합니다.
디렉터리 이름을 입력합니다.
저는 test 로 정했습니다.
이름을 입력하고 [OK] 버튼을 클릭합니다.
테스트 소스 디렉터리 지정
테스트 코드가 저장되는 디렉터리로 지정하기 위한 설정입니다.
프로젝트를 우클릭합니다.
[Open Module Settings] 를 클릭합니다.
생성한 test 디렉터리를 테스트 소스 디렉터리로 지정하기 위해 아래와 같이 선택합니다.
[왼쪽 메뉴에서 Modules 선택] - [프로젝트이름 선택] - [Tests Tab 클릭] - [생성한 test 디렉터리 선택] - [오른쪽에 초록색글씨로 Test가 추가됐는지 확인]
모두 설정됐으면 [OK] 를 클릭합니다.
test 폴더가 테스트 소스 디렉터리로 지정되어 초록색으로 뜨는것을 확인합니다.
JUnit 라이브러리 다운로드
테스트를 작성하려는 클래스 화면을 우클릭합니다.
아래와 같이 메뉴가 활성화 되면 [Go To] - [Test] 를 클릭합니다.
[Create New Test ...] 를 클릭합니다.
JUnit 라이브러리가 없으면 아래와 같이 [Fix] 버튼이 표시됩니다.
Testing library 목록을 활성화 해 [JUnit4] 를 선택합니다.
그 다음 바로 아래의 [Fix] 버튼을 클릭하면 라이브러리를 추가할 수 있는 새 창이 뜹니다.
JUnit 버전을 선택하고 [OK] 버튼을 클릭하면 라이브러리 파일이 다운로드 됩니다.
Class Name 항목에 테스트 파일의 이름을 입력합니다.
Generate test methods for에는 테스트하려는 메소드 목록이 뜹니다.
해당 메소드를 테스트하려면 체크박스에 체크하고 [OK] 를 클릭합니다.
저는 테스트 파일을 다시 작성할 것이기 때문에 아무것도 체크하지 않고 [OK] 를 클릭했습니다.
단위테스트 수행
테스트 소스 디렉터리로 지정한 test 디렉터리 아래에 테스트용 클래스 파일이 생성된 것을 확인할 수 있습니다.
전 단계에서 테스트 메소드로 체크한 메소드들은 @Test 애노테이션이 붙습니다.
아래 파일은 파일 생성이후 테스트코드를 다시 작성해서 위의 목록과 차이가 있습니다.
JUnit은 테스트를 위해 main 메소드를 생성해 줄 필요가 없습니다.
테스트를 원하는 메소드를 선택해 실행할 수 있습니다.
아래와 같이 테스트하려는 메소드를 작성한 후 해당 메소드를 우클릭합니다.
메뉴가 활성화되면 [Run '선택한 메소드명'] 을 클릭해 메소드를 실행합니다.
10 + 2 를 수행했고 하단 콘솔에 12 라는 결과값이 뜨는것을 확인할 수 있습니다.
예상값과 결과값이 같은경우
다음 테스트는 assertEquals 메소드를 사용해 테스트를 진행합니다.
JUnit에서 제공하는 메소드로 예상하는 값과 메소드를 실행한 결과를 비교하여 결과를 제공합니다.
assertEquals 의 첫번째 인자는 예상하는 값, 두번째 인자에는 프로덕션 코드를 입력합니다.
클래스명 왼쪽에 뜨는 버튼을 누르면 해당 클래스에 존재하는 모든 메소드들의 결과값을 확인합니다.
하나의 메소드만 확인하고 싶으면 각 메소드 왼쪽의 초록색 실행버튼을 클릭하면 하단에 결과를 제공해줍니다.
예상하는 값과 실제값이 모두 일치하여 왼쪽 하단과 같이 초록색으로 표시됐습니다.,
예상값과 결과값이 다른경우
10+2 의 결과값은 12인데 20이라고 입력하고 실행해보았습니다.
예상하는 값과 결과값이 달라 add 메소드에 빨간색 경고 아이콘이 표시됩니다.
'Intellij' 카테고리의 다른 글
[IntelliJ] 외부 jar(lib/ .jar) 파일 추가하기 (0) | 2020.09.16 |
---|---|
[Mac] Github 프로젝트를 Intellij 에 가져오기 (0) | 2020.09.06 |
[Mac] Intellij Java Project 생성해 Hello world 출력하기 (0) | 2020.07.12 |
[Mac] Intellij Java Web Project 생성하기 (0) | 2020.07.11 |
[Mac] IntelliJ에서 Tomcat Server 추가하기 (0) | 2020.04.05 |