JUnit 5 테스트 반복하기

The Java JUnit 5 테스트 반복하기

백기선님의 강의인 The Java 애플리케이션을 테스트하는 다양한 방법을 듣고 공부한 내용을 정리한 글

테스트를 반복하는 방법

테스트를 여러번 실행해야하는 상황이 있을 수 있다.

RepeatedTest(Count)

Count에 반복 횟수 값을 넣어주면 테스트를 여러번 반복하는 것이 가능하다.

또한 해당 애노테이션이 달려있는 메소드에 RepetitionInfo 타입의 매개변수를 받아 현재 몇번 째 반복이 되고 있는 테스트인지 코드상에서 확인할 수 있다.

Intellij 단축키

Command+P를 누르면 해당 파라미터로 어떤 것을 넣어야하는지 알 수 있다.

ParameterizedTest(name:String)

어떤 파라미터로 테스트를 할 지 설정할 수 있는 애노테이션이다.

이름을 지정해주는 것 또한 가능하며 바인딩 또한 제공해준다.

@ValueSource 애노테이션을 사용하여 파라미터를 줄 수 있다.

@ValueSource에 테스트할 값을 넣고 메소드의 매개변수에 해당 테스트 값을 받아올 수 있다.

@EmptySource@NullSource가 존재하는데 파라미터로 값으로 null과 empty 값을 주는 애노테이션이다.

@ValueSource의 암시적,명시적 변환

기본적으로 @ValueSource의 String 값들은 암시적으로 변환을 해준다.

만약 특정한 타입으로 변환하고 싶은 경우 명시적 변환을 위해 SimpleArgumentConverter클래스를 상속받아 convert 메소드를 구현해주어야한다.

그리고 매개변수 앞에 @ConvertWith를 명시함으로써 해당 타입이 converter에 의해 바인딩되는 값이라는 것을 알려주어야한다.

Reference

백기선님 인프런 강의 더 자바, 애플리케이션을 테스트하는 다양한 방법



© 2022. by minkuk

Powered by minkuk