진짜 개발자
본문 바로가기

Test

Test - Intellij에서 Infinitest를 이용한 자동 단위테스트 설정하기(Infinitest란?, Infinitest 사용법)

728x90
infinitest

이번 포스팅에서는 Intellij에서 infinitest를 사용하는 법에 대해 알아보도록 하겠습니다.

 

 

https://infinitest.github.io/

사실 위의 링크를 따라 가신다면, Infinitest의 문서가 있어, Eclipse, Intellij각각의 IDE에서 설정하는방법에 대해 친절히 나와있지만, 그 글마저 읽기 귀찮은분들을 위해 나름대로 간단히 설명드리도록 하겠습니다.

 

 

 

1. Infinitest란 ?

infinitest란 Test코드 작성시, background에서 Infinitest가 대기하고 있다가, Test코드를 자동으로 실행해주는 플러그인입니다. 위의 링크를 따라보면, hot한 개발방식인 tdd를 좋아한다면, Infinitest도 좋아하게 될것이라고 나와있군요.

 

 

 


2. Intellij에서 Infinitest 설정

2.1 Infinitest Plugins 설치

우선 Intellij에서 Shift 두번을 눌러 Search Everywhere를 엽니다. 그 후 Actions 탭의 Plugins를 클릭합니다.

 

infinitest를 검색한 뒤, Search in repositories를 클릭합니다. 그 후 나타나는 infinitest모듈을 클릭한 뒤 Install을 합니다. 그 후 intellij를 재시작 합니다.

 

 

 

2.2 Compiler Build project automatically 설정

코드 수정시, 모듈이 이를 관찰하고, 테스트를 실행하기 위해서는 Compiler의 Build project automatically설정을 해주어야 합니다. File - Settings를 클릭하여 settings창을 엽니다.

 

그 후, compiler찾아 선택한 뒤 Build project automatically를 체크합니다.

 

 

 

 

2.3 Module 추가

모듈추가를 위해 File - Project Structure를 엽니다.

 

Modules를 선택한뒤, test코드가 포함되는 디렉토리를 선택합니다. 그 후 +아이콘을 클릭합니다.

 

그 후, 나타나는 모듈들의 목록중, Infinitest를 선택하여 추가합니다.

 

추가된 것을 확인할 수 있습니다.

 

 

 

 

3. Test 코드 작성

3.1 Junit 라이브러리 추가

Infinitest는 기본적으로 JunitTestNG의 테스트 코드를 자동으로 실행해줍니다. 저는 Junit 을 사용할 것입니다.

 




spring boot, gradle 프로젝트의 경우 build.gradle파일의 dependencies블록안에 위의 코드를 추가합니다.

 

 

 

3.2 Test 대상 클래스 생성

Test 클래스들이 위치하는 디렉토리 경로(src-test-java-프로젝트경로)에 테스트클래스를 생성합니다.

 

테스트 대상 클래스인 Calculator를 생성한 뒤, 간단한 메소드를 추가해줍니다.

 

 

 

3.3 Test 클래스 생성

위 와 같이 테스트코드를 작성합니다. assertThat의 경우에는 가독성이 보다 더 좋은 hamcrest것을 사용했습니다.

 

잠시 후, 하단의 Infinitest모양의 아이콘을 클릭해보면, Test가 통과했다고 나타납니다.

 

 

위와 같이 21로 바꾸어, 고의적으로 에러를 만듭니다.

 

 

잠시 후, 하단을 확인하면, 1개의 테스트가 실패되었다고 나타나며, 실패한 코드에는 Infinitest 아이콘이 표시됩니다.

 

 


'Test' 카테고리의 다른 글

Test - Test 코드를 작성해야하는 이유와, 방법  (2) 2020.11.06
Test - TDD(테스트 주도 개발방법론)이란?  (0) 2019.03.03
Test - Junit이란?  (0) 2019.03.03