담비의 개발블로그

[Spring Boot]JUnit이란? 본문

언어&프레임워크/Spring&Spring Boot

[Spring Boot]JUnit이란?

담비12 2024. 7. 24. 20:48

 

JUnit이란?

 

테스트 코드를 작성하고, 작성한 테스트 코드를 실행할 때 사용하는 자바의 테스트 프레임 워크이다. 소프트웨어 개발 시 테스트 작업을 수행할 때 많이 사용한다. 자바에서 사용하는 단위테스트를 JUnit이라고 한다. 현재 가장 많이 사용되는 버전은 JUnit5이다. @Test 메서드가 호출할 때마다 새로운 인스턴스가 생성되어 독립적인 테스트 가능하다.

 

 

 

테스트 어노테이션 메서드

@Test: 테스트 메서드를 나타낸다.

@Before: 각 테스트 전에 실행될 메서드를 지정한다.

@After: 각 테스트 후에 실행될 메서드를 지정한다.

@BeforeClass: 모든 테스트가 실행되기 전에 한 번 실행될 메서드를 지정 다.

@AfterClass: 모든 테스트가 실행된 후에 한 번 실행될 메서드를 지정 다.

@Ignore: 특정 테스트 메서드를 무시하도록 지정 다.

 

 

 

JUnit 장점

코드 품질 향상: JUnit을 사용하면 코드의 결함을 조기에 발견하여 품질을 향상시킬 수 있다.
자동화된 테스트: 지속적 통합(CI) 시스템과 통합하여 자동화된 테스트 환경을 구축할 수 있다.
문서화: 테스트 코드는 코드의 동작을 문서화하는 역할도 한다.

 

JUnit 단점

시간 소모: 처음에는 단위 테스트를 작성하는 데 시간이 많이 소요될 수 있다.
유지보수 비용: 코드가 변경되면 테스트 코드도 함께 수정해야 하는 유지보수 비용이 발생할 수 있다.

 

 

단위테스트(Unit Test)

 

프로그래밍에서 모든 함수와 메서드에 대한 테스트 케이스를 작성하여 의도된대로 잘 동작하는지 검증하는 절차이다.
프로그램을 작은 단위로 쪼개 각 단위가 정확하게 동작하는지 검사함으로써 프로그램의 안정성을 높인다.
System.out.println()을 하는 번거로운 디버깅이 필요없고, 개발 기간 중 대부분을 차지하는 디버깅 시간을 단축한다.

 

단위테스트의 장점

단위 테스트는 해당 부분만 독립적으로 테스트하기 때문에 어떤 코드를 리팩토링하여도 빠르게 문제 여부를 파악할 수 있다.