sitelink1 | |
---|---|
sitelink2 | |
sitelink3 | |
extra_vars4 | |
extra_vars5 | |
extra_vars6 |
이클립스 기반 프로젝트 필수 유틸리티 (155페이지)Assertion의 사전적 의미는 주장, 단언이다. 즉, 실행 중간중간에 어떤 값이나 조건이 맞거나 혹은 틀리다고 '주장하거나 단언한다'는 뜻이다.
Assertion을 이용하면 test 메소드 중간중간에 어떤 조건이나 객체의 비교를 통해서 문제점을 끄집어 낼 수 있도록 도와준다.
사용 방법은 다음의 메소드를 test 메소드 안에서 사용하면 된다. 그리고 비교한 결과나 조건이 false 면, AssertionFailure라는 Failure를 내고 해당 test 메소드는 종료한다.
Assertion을 이용하면 test 메소드 중간중간에 어떤 조건이나 객체의 비교를 통해서 문제점을 끄집어 낼 수 있도록 도와준다.
사용 방법은 다음의 메소드를 test 메소드 안에서 사용하면 된다. 그리고 비교한 결과나 조건이 false 면, AssertionFailure라는 Failure를 내고 해당 test 메소드는 종료한다.
- assertEquals(primitive expected, primitive actual) : 두 개의 기본형(primitive) 변수의 값이 같은지 검사한다.
- assertEquals(Object expected, Object actual) : 두 개의 객체 값이 같은지 검사한다(내부적으로 equals() 메소드를 사용한다.)
- assertSame(Object expected, Object actual) : 두 개의 객체가 같은지 검사한다(내부적으로 두 객체의 메모리 주소가 같은지를 검사한다)
- assertNotSame(Object expected, Object actual) : 두 개의 객체가 다른지 검사한다(내부적으로 두 객체의 메모리 주소가 다른지를 검사한다)
- assertNull(Object object) : 객체가 Null인지를 검사한다.
- assertNotNull(Object object) : 객체가 Null이 아닌지를 검사한다.
- assertTrue(boolean condition) : 조건문이 true인지를 검사한다.
- assertFalse(boolean condition) : 조건문이 false인지를 검사한다.
위에서 설명한 메소드를 확인해 보기 위해 다음의 예제를 살펴보자. assertTrue(counter.getDays() > 500)라는 줄은 counter.getDays()의 값이 500보다 크면 정상이라고 주장하는 것이다.
/*
* DayCounter 프로그램의 getDays() 메소드를 테스트한다.
*/
package com.seeyouservice.web.ibatis;
public class DayCounterTest1 extends TestCase {
/**
* getDays() 메소드를 테스트한다.
*/
public void testGetDays() {
DayCounter counter = new DayCounter();
Calendar day = Calendar.getInstance();
//2003년 10월 5일
day.set(2003, 10, 5);
counter.setDay1(day);
day = Calendar.getInstance();
//2002년 6월 2일
day.set(2002, 6, 2);
counter.setDay2(day);
//결과는 491이나 fail이 되도록 틀린 조건을 걸어보자
assertTrue(counter.getDays() > 500);
}
}
그러나 counter.getDays()의 결과 값은 491이기 때문에, 이 예제를 실행하면 AssertionFailure를 내고 종료한다. 만약 조건이 true라면 아무런 메세지를 내지 않고 지나간다.
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
18 | POI HSSF 기능 가이드 -- 퀵·가이드 (영문) | 황제낙엽 | 2008.05.15 | 297 |
17 |
Comma Separated Values (CSV) - au.com.bytecode.opencsv
![]() | 황제낙엽 | 2007.01.23 | 857 |
16 | Comma Separated Values (CSV) - com.Ostermiller.util Java Utilities | 황제낙엽 | 2007.01.23 | 266 |
15 | 엑셀(Excel)문서 처리 패키지 | 황제낙엽 | 2007.01.22 | 1437 |
14 | JUnit 간단 정리 | 황제낙엽 | 2007.09.17 | 81 |
13 | JUnit 3.8에서 JUnit 4, TestNG 활용으로 | 황제낙엽 | 2007.09.17 | 421 |
12 | 이클립스에 JUnit Test 환경 설정하기 | 황제낙엽 | 2007.08.28 | 102 |
11 | log4j에서 여러파일에 로그남기기 | 황제낙엽 | 2007.09.04 | 61 |
10 | Unitils 를 이용해 Spring Test의 편리성 획득하기 | 황제낙엽 | 2007.09.04 | 128 |
» | Assertions : 비교 확인, 조건 확인, Null 확인 | 황제낙엽 | 2007.09.03 | 209 |
8 | JUnit 4로 뛰어들기 (한글) | 황제낙엽 | 2007.09.03 | 180 |
7 | Test-Driven Development by JUnit | 황제낙엽 | 2006.02.21 | 150 |
6 | jWebUnit 프레임웍으로 웹 애플리케이션 테스트를 간단하게 | 황제낙엽 | 2006.02.21 | 69 |
5 | [re] jWebUnit 프레임웍 로그인 테스트 예제 | 황제낙엽 | 2006.02.22 | 70 |
4 | jWebUnit 의 원조 HttpUnit | 황제낙엽 | 2006.02.23 | 70 |
3 | Junit 을 이용한 효율적인 단위 테스트 전략 | 황제낙엽 | 2007.01.30 | 368 |
2 | JUnit의 구조 | 황제낙엽 | 2007.07.25 | 88 |
1 | Log4j 웹에서 사용하기 | 황제낙엽 | 2007.05.13 | 95 |