이 글은 책을 읽은 후 책 본문을 인용하거나 글쓴이의 생각을 가미하여 작성 한 글입니다. 따라서 책의 대한 내용을 올바르게 이해하는 것은, 직접 책을 읽고 이해하는 것이 가장 베스트입니다.
테스트 클래스
- public class 여야 하고, 파라미터를 받지 않는 생성자를 제공해야 한다.
- 테스트 메서드는 @Test 애노테이션이 있어야 하고, public이고, 파라미터도 받아서는 안된다. 반환형은 void여야 한다.
- JUnit은 각 @Test 메서드를 호출할 때마다 테스트 클래스의 인스턴스를 새로 생성하며 모든 테스트 메서드는 각기 다 른 테스트 클래스 인스턴스에서 실행되므로 인스턴스 변수는 공유될 수 없다.
- 테스트 검증에는 Assert 클래스에 정의된 assert 메서드를 사용한다.
- assert 메서드 중 파라미터 2개를 받는 요소들은 항상 같은 패턴(기대결과값,테스트값)을 따른다.
assert method | 목적 |
assertArrayEquals("message", A, B) | 배열 A와 B가 일치함을 확인 |
assertEquals("message", A, B) | 객체 A와 B가 일치함을 확인. B를 파라미터로 A의 메서드를 호출(A.equals(B)) |
assertSame("message", A, B) | 객체 A와 B가 같은 객체임을 확인한다. Equals는 값을 확인 했다면, Same은 물리적으로 동일 객체인지 비교한다.(메모리 주소 비교) |
assertTrue( "message", A) | 조건 A가 참(TRUE)임을 확인 |
assertNotNull( "message", A) | 객체 A가 NULL이 아님을 확인 |
테스트 스위트
- 테스트 스위트는 특수한 형태의 테스트 러너로 여러개의 테스트 클래스를 동시에 실행할때 쓰이는 객체, 일종의 테스트 집합이며 별도로 테스트 스위트가 정의되지 않았다면 JUnit이 테스트 클래스 내 모든 테스트들을 포함하는 스위트를 자동으로 만들어준다.
테스트 러너
- 테스트 스위트를 실행하는 일종의 엔진
파라미터화(parameterized)는 버전 4, 5가 차이가 있으므로 내용 생략.
'책 뿌시기(읽고난 후 생각정리) > JUnit in Action' 카테고리의 다른 글
3장 JUnit 마스터하기 (0) | 2023.12.19 |
---|---|
1장 JUnit 첫걸음 (0) | 2023.12.13 |