본문 바로가기

test

(5)
Mockito 공부하기 #2 Mockito Docs를 공부하면서 정리한 내용을 작성하는 두 번째 게시글입니다. 첫 번째 게시글 바로가기 11. ArgumentCaptor 보통 verify시 아규먼트 값을 직접 지정하지만 ArgumentCaptor를 사용하면 capture를 통해 유연하게 아규먼트 값을 넘길 수 있습니다. @Test void capture() throws Exception{ // stubbing final List mockedList = mock(List.class); when(mockedList.get(1)).thenReturn("A"); when(mockedList.get(2)).thenReturn("B"); when(mockedList.get(3)).thenReturn("C"); // 1. ArgumentCapt..
Mockito 공부하기 #1 Mockito Docs를 공부하면서 정리한 내용을 작성하는 첫 번째 게시글입니다. 두 번째 게시글 바로가기 Mockito란? Mockito는 Mock Object를 creation, verification, stubbing 해주는 JAVA에서 사용되는 라이브러리입니다. Mock Object 객체 지향 프로그래밍으로 개발한 프로그램을 테스트할 때 테스트를 수행할 모듈과 연결되는 외부의 다른 모듈을 흉내 내는 가짜 모듈을 생성하여 테스트의 효용성을 높이는 데 사용하는 객체입니다. 의존성 추가 plugins { id 'java' } repositories { mavenCentral() } dependencies { testImplementation('org.junit.jupiter:junit-jupiter:5..
JUnit5 User Guide 공부 #3 JUnit5 #3 Junit5 User Guide를 읽어보면서 Junit5를 공부하는 게시글입니다. #1 바로가기, #2 바로가기 이번 게시글에서는 JUnit5 User Guide의 Writing Tests 중 나머지 부분들에 대해 알아보겠습니다. 1. Dependency Injection for Constructors and Methods JUnit5 이전까지는 테스트 생성자와 메서드에 매개변수를 가질 수 없었습니다. Junit5에서는 테스트 생성자와 메서드에 매개변수를 가질 수 있고 이는 Dependency Injection을 가능하게 합니다. ParameterResolver는 런타임 시 매개변수를 정의하는 특징이 있습니다. JUnit5 Jupiter에서는 등록된 ParameterResolver에 의..
JUnit5 User Guide 공부 #2 JUnit5 #2 Junit5 User Guide를 읽어보면서 Junit5를 공부하는 게시글입니다. #1 바로가기, #3 바로가기 이번 게시글에서는 JUnit5의 Assertions, Assumptions, Conditional Test등에 대해 알아보겠습니다. 1. Assertions JUnit5 Jupiter의 Assertions Method들에는 JUnit4의 Assertions의 많은 메서드들이 포함되어 있고 람다를 활용한 추가적인 기능을 제공합니다. 모든 메서드는 org.junit.jupiter.api.Assertions의 static 메서드로 정의되어 있습니다. 먼저 테스트 실패 시 메시지에 대해 알아보겠습니다. 1) 테스트 실패 시 메시지 class SampleTest { @Test void..
JUnit5 User Guide 공부 #1 JUnit5 #1 Junit5 User Guide를 읽어보면서 Junit5를 공부하는 게시글입니다. #2 바로가기, #3 바로가기 이번 게시글에서는 JUnit5의 특징과 라이프 사이클에 대해 알아보겠습니다. Junit5란? Junit5는 이전 버전과는 다르게 3가지의 서로 다른 하위 프로젝트들로 구성되어 있습니다. 하위 프로젝트는 총 3개이며 아래와 같습니다. 우리가 작성하는 테스트 코드는 JUnit Vintage 혹은 JUnit Jupiter에 의해 실행되며 IDE나 Build Tool은 JUnit Platform을 통해 해당 테스트들을 구동시킵니다. 1. JUnit Platform JVM위에서 테스트를 실행시키는 기반 역할을 합니다. 2. JUnit Jupiter JUnit5 기반의 테스트를 실행시키..