반응형
Jest는 JavaScript 테스트 프레임워크로 사용되며, 다양한 테스트 유형과 환경에 적용할 수 있는 많은 내장 기능을 제공합니다. 간단한 Jest 테스트 문법을 소개하겠습니다.
- test() 함수: 테스트 케이스를 정의하는 함수
javascript
test('테스트 설명', () => {
// 테스트 로직 작성
});
- expect() 함수: 테스트 결과의 예상 값과 메소드 체이닝을 사용해 실제 결과를 비교합니다.
javascript
const result = 1 + 1; // 실제 코드에서 반환된 값
expect(result).toBe(2); // 예상 값은 2
- Matchers: expect() 함수에 연결하여 결과 비교를 수행하는 메소드
- .toBe(): 두 값이 동일한지 확인
- .toEqual(): 두 객체나 배열이 동일한지 확인
- .not: 결과 부정을 위한 체이닝
- .toBeTruthy(): 값이 참(Truthy)으로 평가되는지 확인
- .toBeFalsy(): 값이 거짓(Falsy)으로 평가되는지 확인
- .toBeNull(): 값이 null인지 확인
- .toBeDefined(): 값이 정의되어 있는지 확인
- .toContain(): 배열이나 문자열에서 특정 요소나 문자열이 포함되어 있는지 확인
- .toHaveLength(): 배열이나 문자열의 길이가 일치하는지 확인버
- 비동기 코드 테스트: async/await 또는 .resolves/.rejects를 사용해 비동기 코드 테스트
- async/await 사용 :
javascript
test('비동기 테스트', async () => {
const data = await fetchData();
expect(data).toEqual(expectedData);
});
- .resolves/.rejects 사용 :
javascript
test('비동기 테스트', () => {
return expect(fetchData()).resolves.toEqual(expectedData);
});
- 그룹화와 중첩된 테스트: describe() 함수를 사용해 관련 테스트들을 그룹화할 수 있습니다.
javascript
describe('사칙연산 테스트 그룹', () => {
test('덧셈', () => {
// 덧셈 테스트 로직 작성
});
test('뺄셈', () => {
// 뺄셈 테스트 로직 작성
});
describe('곱셈과 나눗셈', () => {
test('곱셈', () => {
// 곱셈 테스트 로직 작성
});
test('나눗셈', () => {
// 나눗셈 테스트 로직 작성
});
});
});
Jest는 더 많은 상세 기능을 제공합니다. 설정, 초기화, 종료, 스냅샷 테스팅 등의 고급 기능도 확인하시면 좋습니다. 공식 문서를 참고하시면 도움이 될 것입니다
반응형
'생각 > javascript' 카테고리의 다른 글
코딩테스트 알고리즘 정리 (0) | 2025.02.17 |
---|---|
Chart.js (0) | 2023.06.23 |
동기 비동기 (1) | 2023.06.16 |
JS면접 준비 / 채워 가기 (0) | 2022.12.10 |
배열과 유사배열 (0) | 2022.09.30 |