Test Code: Jest
Test Code란 우리가 작성한 코드에 문제가 없는지 테스트하기 위해 작성하는 코드이다.
처음 개발자가 Test Code라는 용어를 들을 때는 다음과 같은 것들을 생각할 수 있다.
console.log(""); 이것만큼 초심자 개발자에게는 정말 중요한 Test Code 중 하나라 생각한다.
이 글과 좀 다른 내용으로 연관이 전혀 없는 내용이지만 본 글 게시자는 API Test로 사용하는 Thunder Client, Rest API, Insomnia를 동일하게 Test Code를 취급해 이것들도 Test Code 아냐?라는 생각을 했다.
여튼 여기서 Test Code의 요점은 내가 작성한 코드가 내가 원하는 목적이나 목표, 또는 알맞은 정의에 맞게 구현한 코드가 얼마나 효율성이 있으며 그에 맞게 결과물이 내가 생각한 결과 값과 동일하게 구성하였는지 Test를 해보는 Code를 작성한다는 것이다.
Test Code의 종류를 정리하자면,
단위 테스트(Unit Test): 가장 작은 규모의 기능을 테스트합니다.
통합 테스트(Integration Test): 다양한 기능을 합쳤을 때 생기는 문제를 방지하기 위한 테스트입니다.
E2E 테스트 (End-to-end Test): 끝에서 끝(종단 간)을 의미하는 End To end 테스트입니다. 쉽게 말하면 백엔드부터 시작해서 최종적으로 웹 페이지가 원하는대로 동작하며 원하는 데이터를 잘 보여주는지 확인합니다.
Test Code 종류 출처: 스파르타코딩클럽
Test Code를 위한 테스팅 프레임워크는 종류가 매우 다양하다. 그중 테스팅 프레임워크 Jest를 사용하고자 한다.
그 이유는 테스트 코드의 표현이 다른 프레임워크보다 훨씬 간결하다는 이유와 페이스북에서 개발한 프론트엔드 라이브러리인 React.js와도 호환성이 좋고 그외 다양한 프로그램에서도 테스팅 프레임워크로써 사용할 수 있어서 좋다는 장점이 있다.