Files
javascript-examples/doc/22_테스트.md
2025-01-26 02:57:06 +09:00

1.9 KiB

테스트

Jest

Jest는 페이스북에서 개발한 자바스크립트 테스팅 프레임워크로, 간편한 설정과 다양한 기능을 제공하여 개발자들에게 많은 사랑을 받고 있습니다. Jest를 사용하면 자바스크립트 코드의 품질을 높이고, 버그를 조기에 발견하여 생산성을 향상시킬 수 있습니다.

먼저, 프로젝트 디렉토리에서 다음 명령어를 실행하여 Jest를 설치합니다.

npm install --save-dev jest

package.json 파일의 scripts 섹션에 테스트 실행 스크립트를 추가합니다.

"scripts": {
  "test": "jest"
}

Jest는 .js, .jsx, .ts, .tsx 확장자를 가진 파일이나 __tests__ 디렉토리 내에 있는 파일을 자동으로 테스트 파일로 인식합니다.

// sum.js
function sum(a, b) {
  return a + b;
}

// sum.test.js
const sum = require('./sum');

test('adds 1 + 2 to equal 3', () => {
  expect(sum(1, 2)).toBe(3);
});

터미널에서 다음 명령어를 실행하여 테스트를 실행합니다.

npm test
  • 테스트 케이스 작성: test 함수를 사용하여 테스트 케이스를 작성합니다.
  • Expect API: expect() 함수를 사용하여 실제 값과 예상 값을 비교합니다. 다양한 매처(matcher)를 제공하여 정확한 비교가 가능합니다.
  • Mock 함수: 함수의 동작을 가짜로 만들어 테스트 환경을 제어할 수 있습니다.
  • Snapshot 테스트: UI 컴포넌트의 구조를 스냅샷으로 저장하고, 변경 여부를 확인합니다.
  • 커버리지 보고: 코드 커버리지를 측정하여 테스트의 완전성을 확인합니다.
test('null, undefined, and other falsy', () => {
  const n = null;
  expect(n).toBeNull();
  expect(n).toBeDefined();
  expect(n).not.toBeUndefined();
  expect(n).toBeFalsy();
  expect(n).not.toBeTruthy();
});