본문 바로가기
백엔드/Spring Boot 이론

예제 : JUnit 단위테스트

by P_eli 2023. 11. 27.
728x90
반응형

JUnit을 사용하여 단위 테스트를 작성하는 기초적인 예제 코드를 살펴보겠습니다. 단위 테스트는 소프트웨어 개발에서 각 부분이 올바르게 작동하는지 확인하는 데 도움이 되며, JUnit은 이를 위한 강력한 도구 중 하나입니다.

프로젝트 설정

먼저, 당신의 프로젝트에 JUnit을 추가해보겠습니다. Maven을 사용하는 경우, pom.xml 파일에 다음 의존성을 추가합니다.

<dependencies>
    <!-- 다른 의존성들 -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
    </dependency>
</dependencies>

 

간단한 클래스 생성

테스트할 간단한 클래스를 만들어봅시다. 예를 들어, 계산기 클래스를 만들어보겠습니다.

public class Calculator {

    public int add(int a, int b) {
        return a + b;
    }

    public int subtract(int a, int b) {
        return a - b;
    }

    public int multiply(int a, int b) {
        return a * b;
    }

    public int divide(int a, int b) {
        if (b == 0) {
            throw new IllegalArgumentException("Cannot divide by zero!");
        }
        return a / b;
    }
}

 

JUnit을 활용한 테스트 작성

이제 JUnit을 사용하여 위에서 만든 Calculator 클래스를 테스트하는 코드를 작성해보겠습니다.

import org.junit.Test;
import static org.junit.Assert.*;

public class CalculatorTest {

    @Test
    public void testAdd() {
        Calculator calculator = new Calculator();
        assertEquals(5, calculator.add(2, 3));
    }

    @Test
    public void testSubtract() {
        Calculator calculator = new Calculator();
        assertEquals(1, calculator.subtract(4, 3));
    }

    @Test
    public void testMultiply() {
        Calculator calculator = new Calculator();
        assertEquals(6, calculator.multiply(2, 3));
    }

    @Test
    public void testDivide() {
        Calculator calculator = new Calculator();
        assertEquals(2, calculator.divide(6, 3));
    }

    @Test(expected = IllegalArgumentException.class)
    public void testDivideByZero() {
        Calculator calculator = new Calculator();
        calculator.divide(10, 0);
    }
}

 

주요 포인트

  • @Test: 해당 메서드가 테스트 메서드임을 선언합니다.
  • assertEquals(expected, actual): 예상값과 실제값이 같은지 확인합니다.
  • @Test(expected = SomeException.class): 해당 예외가 발생하는지 확인합니다.

실행과 결과 확인

이제 IDE에서 테스트를 실행하면 각 테스트 메서드가 실행되고, 결과가 성공 또는 실패로 표시됩니다.

JUnit은 테스트 결과를 쉽게 이해할 수 있는 형태로 제공하여, 문제가 발생한 경우 빠르게 대처할 수 있습니다.

728x90
반응형

'백엔드 > Spring Boot 이론' 카테고리의 다른 글

스프링 부트 : 자동 구성, 자동 배포, 의존성 주입  (0) 2023.12.01
스프링부트 프로젝트 구성과 설정  (0) 2023.11.30
JUnit  (0) 2023.11.27
스프링부트 어노테이션  (0) 2023.11.26
빈과 컨테이너  (0) 2023.11.24