Java 테스트 소개
Maria Milusheva
Senior Software Engineer

addTwoNumbers() 메서드에 대한 테스트를 작성해 봅시다:
public int addTwoNumbers(int a, int b) {
return a + b;
}
IDE나 빌드 도구로 JUnit을 설치합니다(예시는 인용 참조)
모든 테스트에는 @Test 애너테이션이 필요합니다:
import org.junit.jupiter.api.Test;
@Test
// 테스트 메서드가 여기에 옵니다
애너테이션: 컴파일러와 프레임워크가 메서드를 처리하는 방식을 지정하는 메타데이터. @로 시작합니다
import org.junit.jupiter.api.Test; @Testvoid testAddTwoNumbers() {// Arrange - Given int num1 = 2; int num2 = 2;// Act - When int actual = addTwoNumbers(num1, num2);// Assert - Then assertEquals(4, actual); }

다음 단언을 보겠습니다:
assertEquals(4, actual); // actual == 4이면 성공
성공하면 Test passed 메시지가 표시됩니다
값이 같지 않으면, 예: actual = 5:
org.opentest4j.AssertionFailedError: expected: <4> but was: <5>
인자 순서를 기억하세요! JUnit에서는 첫 번째 인자가 기대값입니다.
@Testvoid testAddTwoNumbers() { // Given int num1 = 2147483647; int num2 = 1; // When int actual = addTwoNumbers(num1, num2); // Then assertEquals(-2147483648, actual); }
import org.junit.jupiter.api.Assertions.*;
import static com.datacamp.util.testing.CustomJUnitTestLauncher.launchTestsAndPrint;
import static package.Class.method는 package.Class.method 대신 method만으로 사용하게 해 줍니다import static java.lang.Math.max;
...
max(3,5); // Math.max(3, 5) 대신
Java 테스트 소개