반응형
Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- list
- Visual Studio Code
- 자바스크립트
- 단위테스트
- CSS
- 배열
- 자바문법
- json
- 정규식
- junit5
- ArrayList
- js
- 자바
- string
- 인텔리제이
- Eclipse
- 테스트자동화
- 문자열
- junit
- 이클립스
- input
- html
- Array
- javascript
- math
- IntelliJ
- java테스트
- vscode
- Java
- HashMap
Archives
- Today
- Total
어제 오늘 내일
[JUnit] assertTrue(), assertFalse() – 조건식이 맞는지 검사 본문
1. assertTrue(), assertFalse() 메소드
assertTrue()와 assertFalse() 메소드는 JUnit에서 조건식의 결과가 기대한 논리값(boolean)과 일치하는지 검증할 때 사용하는 단정(Assertion) 메소드입니다.
조건식이 true인지, 혹은 false인지 명확하게 검사할 수 있어 단위 테스트에서 가장 자주 활용되는 메소드 중 하나입니다.
JUnit5의 대표적인 메소드 정의는 다음과 같습니다.
assertTrue(condition);
assertTrue(condition, message);
assertFalse(condition);
assertFalse(condition, message);
- condition: 검사할 조건(boolean 표현식)
- message: 조건 불일치 시 출력할 설명 메시지
2. assertTrue() 기본 사용 예제
import static org.junit.jupiter.api.Assertions.assertTrue;
import org.junit.jupiter.api.Test;
public class BooleanTest {
@Test
void testAssertTrue() {
int number = 10;
assertTrue(number > 5);
}
}
코드 설명
- number > 5의 결과는 true입니다.
- assertTrue()는 조건식이 true일 경우 테스트를 통과합니다.
3. assertFalse() 기본 사용 예제
import static org.junit.jupiter.api.Assertions.assertFalse;
import org.junit.jupiter.api.Test;
public class BooleanTest {
@Test
void testAssertFalse() {
int number = 3;
assertFalse(number > 10);
}
}
코드 설명
- number > 10의 결과는 false입니다.
- assertFalse()는 조건식이 false일 때 테스트를 통과합니다.
4. 메시지를 포함한 assertTrue(), assertFalse() 예제
@Test
void testWithMessage() {
String text = "JUnit";
assertTrue(text.startsWith("J"), "문자열이 J로 시작해야 합니다.");
assertFalse(text.isEmpty(), "문자열이 비어 있으면 안됩니다.");
}
코드 설명
- startsWith("J")는 true이므로 assertTrue()를 통과합니다.
- isEmpty()는 false이므로 assertFalse()를 통과합니다.
- 조건이 맞지 않을 경우 설정한 메시지가 출력됩니다.
5. 복잡한 조건 검증에 assertTrue(), assertFalse() 활용하기
단순 비교뿐 아니라 여러 로직을 포함한 조건식 검증에도 사용할 수 있습니다.
@Test
void testComplexCondition() {
int age = 25;
boolean isAdult = age >= 20 && age < 60;
assertTrue(isAdult);
assertFalse(age < 0);
}
코드 설명
- isAdult는 복합 조건을 통해 계산된 boolean 값입니다.
- 성인 여부, 유효한 값인지 등을 명확하게 표현할 수 있습니다.
6. assertTrue(), assertFalse() 사용 시 주의할 점
6.1 조건식이 너무 복잡하면 가독성이 떨어집니다.
가급적 boolean 값을 미리 변수로 분리하여 의미를 명확히 하는 것이 좋습니다.
6.2 NullPointerException 위험
조건식에 null이 관여할 경우 예외가 발생할 수 있습니다.
이 경우 assertNotNull()을 먼저 사용해 안전하게 검증하는 것이 좋습니다.
6.3 명확한 의미 전달이 중요합니다.
true 또는 false 검증만으로는 의도를 이해하기 어려운 경우가 있으므로
필요한 경우 실패 메시지를 적극적으로 활용해야 합니다.
7. 정리
assertTrue()와 assertFalse() 메소드는 조건식이 기대한 논리값과 일치하는지 검사하는 핵심 검증 도구입니다.
단순 비교뿐 아니라 메소드 호출 결과나 복잡한 논리식을 테스트하는 데 자주 사용되며, 의미 있는 메시지와 함께 사용하면 테스트 가독성과 디버깅 효율을 크게 높일 수 있습니다.
반응형
'IT > JUnit' 카테고리의 다른 글
| [JUnit] assertThrows() – 예외 발생 여부 테스트 (0) | 2026.01.06 |
|---|---|
| [JUnit] assertNull(), assertNotNull() – null 여부 확인 (0) | 2026.01.06 |
| [JUnit] assertNotEquals() – 같지 않아야 하는 값 비교 (0) | 2026.01.05 |
| [JUnit] assertEquals() – 예상 값과 실제 값 비교 (0) | 2026.01.04 |
| [JUnit4] JUnit4 dependency 설정하기 (maven) (0) | 2023.06.18 |
Comments
