Jest는 자바스크립트 테스트 프레임워크다.
- 메타에서 개발
- React를 포함한 다양한 JS애플리케이션 테스트를 작성하고 실행하는 데 유용하다.
-유닛테스트,통합테스트,엔드투엔드테스트까지 다 커버할 수 있다. (차후에 설명)
Jest 특징
쉬운 설정 가능 : 기본적으로 설정 없이도 바로 사용할 수 있다.
빠른 실행 속도 : 테스트를 병렬로 실행해 빠르게 결과를 확인할 수 있다.
스냅샷 테스트 : UI변화가 없는지 검증할 때 유용하다.
모킹 함수 기능 : 함수,모듈 등을 모킹(mocking)해서 독립적인 테스트 환경을 만들 수 있다.
Jest 언제 쓰나요?
- 유닛 테스트:
- 개별 함수나 모듈이 예상대로 동작하는지 확인.
- 예) 로그인 함수가 올바른 데이터를 반환하는지 확인.
- 통합 테스트:
- 여러 모듈이 함께 동작할 때, 그 조합이 문제없는지 확인.
- 예) API 호출과 데이터 처리 로직이 잘 동작하는지 테스트.
- UI 테스트 (React 프로젝트):
- 컴포넌트가 예상대로 렌더링 되는지 확인.
- 예) 버튼 클릭 시, 상태가 제대로 업데이트 되는지 확인.
- 스냅샷 테스트:
- UI 출력이 변경되지 않았는지 비교.
- 예) 변경 전후의 컴포넌트 출력 비교.
// sum.js
function sum(a, b) {
return a + b;
}
module.exports = sum;
// sum.test.js
const sum = require('./sum');
test('adds 1 + 2 to equal 3', () => {
expect(sum(1, 2)).toBe(3);
});
테스트 할 땐 test , it 메소드를 사용하여 테스트한다.
test("쓰고 싶은 말", () => { expect(확인하려는 값).toBe(이 값이어야 해) }
프로젝트를 시작해봐야 언제 쓰는 게 적절한지 느껴질 거 같다.
좀더 해봐야겠다!
'Front-End > Test' 카테고리의 다른 글
Jest의 한계점과 Cypress(UI) (0) | 2025.01.03 |
---|---|
Jest Method (1) | 2024.11.19 |