[JAVA] JUnit 자바 단위 테스트

지수·2021년 8월 19일
0

플레이데이터

목록 보기
10/50
post-thumbnail

1. JUnit이란?

✅ Java 기반 단위 테스트 프레임 워크
✅ 프로그램 개발 과정에서 전체를 작은 단위로 나누어 테스트 하며 개발

JUnit의 필요성

  • 단위 테스트를 통해 개발 단계 초기에 문제 발견 가능
  • 즉각적 단위 테스트를 통해 기능에 대한 불확실성 감소
  • 안정적인 솔루션 개발 가능

JUnit 활용 주의사항

  • 하나의 테스트에 최소한의 기능만 간결하게 검증
  • 각 테스트는 독립적으로 실행 (테스트 실행 순서가 서로에게 영향을 주어서는 안됨)
  • 테스트를 위한 코드는 제품 코드에서 분리하여 검증

JUnit 애노테이션(@)

애노테이션특징
@Test단위 테스트 실행 static & private ❌
@BeforeAll모든 단위 테스트 실행 전에 최초로 한 번 실행, static 필수 ⭕
@AfterAll모든 단위 테스트 실행 후에 마지막으로 한 번 실행, static 필수 ⭕
@BeforeEach단위 테스트 실행 전마다 실행(=단위 테스트 갯수만큼 여러 번 실행)
@AfterEach단위 테스트 실행 후마다 실행(=단위 테스트 갯수만큼 여러 번 실행)
@Disabled해당 단위 테스트 실행 ❌ (=무시)
@DisplayNameJUnit 실행 창에 해당 단위 테스트의 메소드명 대신 parameter 값(문구) 출력

위의 애노테이션을 각각 붙인 메소드를 다 모아두고 실행한다고 가정, 실행 순서
@BeforeAll → @BeforeEach → @Test → @AfterEach → @AfterAll



2. Assertion(단정문)이란?

✅ 구현된 프로그램에 대해 맞다는 가정 하에 적합성 검증
✅ 프로그래머가 기대한(가정한) 바가 그대로 구현되었는지 확인

Assertion 메소드

메소드명특징
assertEquals(기대,비교) / assertNotSame(기대,비교)기대값과 비교값이 equals 인지 검증(String)
assertSame(기대,비교) / assertEquals(기대,비교)기대값과 비교값이 == 인지 검증
assertNull() / assertNotNull()검증 값이 Null/NotNull인지 검증
assertTrue() / assertFalse()검증 값이 true/false인지 검증
assertArrayEquals(배열1,배열2)두 배열이 똑같은 값, 똑같은 크기의 배열인지 검증
assertThat검증 값이 특정 상황을 만족하는지 검증
profile
사부작 사부작

0개의 댓글