JUnit
자바용 유닛 테스트 프레임워크
메서드, 클래스, 모듈이 의도한대로 작동하는지를 검증하는 프로세스
테스트 결과를 단순한 텍스트로 남기는 것이 아니라 Test 클래스로 남겨
개발자에게 테스트 방법 및 클래스의 History를 넘겨줄 수 있다.
JUnit는 테스트 케이스를 위한 여러 어노테이션과 메서드를 제공하는데 일부를 알아보자.
@Test, @After, @BeforeClass, @AfterClass
JUnit에서는 @Test 어노테이션을 사용해 메서드가 테스트 메서드임을 표시한다.
외 @After, @BeforeClass, @AfterClass 등의 어노테이션으로 각 테스트의 수명주기도 제어할 수 있다.
import org.junit.Before;
import org.junit.After;
public class DatabaseTest {
DatabaseConnection dbConnection;
@Before
public void setUp() {
dbConnection = new DatabaseConnection();
dbConnection.connect();
}
@After
public void tearDown() {
dbConnection.disconnect();
}
@Test
public void testDatabaseConnection() {
assertTrue(dbConnection.isConnected());
// 테스트 코드...
}
}
import org.junit.BeforeClass;
import org.junit.AfterClass;
public class SetupAndTearDownTest {
@BeforeClass
public static void setUpClass() {
// 테스트 클래스의 모든 테스트 메서드가 실행되기 전에 수행될 코드
}
@AfterClass
public static void tearDownClass() {
// 테스트 클래스의 모든 테스트 메서드가 실행된 후에 수행될 코드
}
@Test
public void testMethod1() {
// 테스트 메서드 1
}
@Test
public void testMethod2() {
// 테스트 메서드 2
}
}
Assertions 메서드
테스트결과로 기대하는 값이 잘 나오는지 확인해볼 수 있다.
import org.junit.Test;
import static org.junit.Assert.assertEquals;
public class CalculatorTest {
@Test
public void testAddition() {
Calculator calculator = new Calculator();
int result = calculator.add(2, 3);
int expected = 5;
assertEquals(expected, result); // 기대값과 실제 결과값이 같은지 확인합니다.
}
}
'이론' 카테고리의 다른 글
ERD란? (0) | 2023.10.31 |
---|---|
SVN이란? (0) | 2023.10.27 |
PMD, 코드품질을 분석도구 (0) | 2023.10.26 |
표준프레임워크 퍼스트북: 1. 표준프레임워크소개 (0) | 2023.10.26 |
HTTP 응답상태코드 (0) | 2023.10.23 |