버그(bug)란?
- 소프트웨어가 예상하지 못한 결과를 내는 것이다.
- 소스 코드나 설계과정에서의 오류 때문에 발생.
따라서 소프트웨어가 예상한대로 결과를 내는지 모든 상황에서 체크를 해야 하기 위해 테스트를 한다.
테스트
1. 블랙박스 테스팅
- 소프트웨어 내부 구조나 동작원리를 모르는 블랙박스와 같은 상태에서 하는 검사.
- 웹 서비스의 사용자의 입장에서 동작을 검사한다.
장점
- 누구나 테스트가 가능
단점
- 기능이 증가될 수록 테스트의 범위가 증가한다. → 시간이 늘어남.
- 테스트 하는 사람에 따라 테스트 퀄리티가 다를 수 있습니다. → QA 직군이 있는 이유
2. 개발자 테스트
- 개발자가 직접 "본인이 작성한 코드"를 검증하기 위해 "테스트 코드"를 작성한다.
장점
- 빠르고 정확한 테스트가 가능하다.
- 테스트 자동화가 가능하다.
- 배포 절차 시 테스트 코드가 수행되어 동작 검증하기 때문이다.
단점
- 개발 시간이 오래 걸린다.
- 테스트 코드를 유지보수하는 비용이 든다.
JUnit
- JUnit이란 자바 프로그래밍 언어용 단위 테스트 프레임워크이다.
- build.gradle 파일을 열어보면 JUnit 사용을 위한 환경설정이 이미 되어있다.
테스트 파일 생성
예시) 계산기
test 클릭 후 기본세팅 그대로 둔 채 OK 눌러서 생성한다.
위와 같이 자동으로 경로를 맞춰서 ‘CalculatorTest’ 파일이 생성된 것을 볼 수 있다.
테스트 코드 작성
JUnit은 테스트 실행 환경을 가지고 있기 때문에 따로 main() 메서드를 실행하거나 서버를 실행시키지 않아도 각각 메서드 혹은 기능별로 테스트 코드를 작성하여 실행시킬 수 있다.
'Spring' 카테고리의 다른 글
[Spring] Spring MVC / Spring HTTP 요청 처리 방법 / Servlet / DispatcherServlet (1) | 2024.09.28 |
---|---|
[Spring] Lombok / application.properties (1) | 2024.09.28 |
[Spring] HTTP / Headers탭 / Response 탭 / header과 payload (1) | 2024.09.25 |
[Spring] Apache Tomcat / SpringBoot와 Spring / Postman (1) | 2024.09.25 |
[Spring] Client와 Server / 웹 서버 / API / RESTful API (0) | 2024.09.25 |