알게된것,복습한것,헷갈렸던것 정리

단위 테스트란? 통합 테스트란?

ysrec328 2025. 11. 27. 23:02

단위 테스트(Unit Test)

가장 작은 단위의 코드를 독립적으로 테스트 하는 것

테스트 대상 : 개별 함수, 메소드, 클래스

목적 : 각 코드 조각이 의도한 대로 동작하는지 확인

특징 :

다른 코드와 분리하여 테스트

빠르게 실행됨

문제 발생 시 정확한 위치 파악 가능

 

예시

java

// 계산기 클래스의 덧셈 함수만 테스트

@Test

public void testAdd() {

    Calculator calc = new Calculator();

    assertEquals(5, calc.add(2,3));  // 2+3 = 5 인지 확인

}

 

통합테스트(Integration Test)

여러 모듈이나 컴포넌트를 결합하여 함께 동작하는지 테스트하는 것

테스트 대상 : 모듈 간의 상호작용, 데이터 흐름

목적 : 각 부분이 연결되었을 때 제대로 협력하는지 확인

특징:

실제 환경과 유사하게 테스트

단위 테스트보다 실행 시간이 김

DB, API, 외부 서비스 연동 포함

 

예시:

java

// 사용자 서비스 + 데이터베이스 통합 테스트

@Test

public void testUserRegistration() {

    UserService service = new UserService();

    User user = service.register("test@email.com","password");

 

    // DB에 실제로 저장되었는지 확인

    User savedUser  = datebase.findUser(user.getId());

    assertNotNull(savedUser);

 

 

 

 

 

실무에서의 적용 예시

Redis 성능 테스트 예시로 보면 :

단위 테스트: Redis의 set() 메소드만 테스트, get() 메소드만 테스트

통합 테스트: 실제 애플리케이션에서 Redis에 데이터 저장 -> 조회 -> 삭제하는 전체 흐름 테스트

 

'알게된것,복습한것,헷갈렸던것 정리' 카테고리의 다른 글

API 테스트란?  (0) 2025.11.27
JWT를 이용한 인증/인가 란?  (0) 2025.11.26
RESTful API 란?  (0) 2025.11.26
LIKE와 =(등호) 차이  (0) 2025.10.03
오버로딩(Overloading) 이란?  (0) 2025.09.27