[typescript] 테스트 자동화 적용하기

많은 프로젝트에서 코드의 품질과 안정성을 유지하기 위해 테스트가 필수적입니다. TypeScript를 사용하는 프로젝트에서는 특히 테스트 자동화가 중요한데, 이를 위해 Jest와 같은 도구를 사용할 수 있습니다.

이번 포스트에서는 TypeScript 프로젝트에 Jest를 도입하여 테스트 자동화를 적용하는 방법에 대해 살펴보겠습니다.

테스트 라이브러리 설치

먼저 프로젝트의 루트 디렉토리에서 아래 명령어로 Jest를 설치합니다.

npm install --save-dev jest @types/jest ts-jest

그 후, TypeScript 타입 정의 파일을 설치합니다.

npm install --save-dev @types/jest

Jest 구성

Jest를 사용하기 위해 package.json 파일에 다음과 같이 "test" 스크립트를 추가합니다.

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

그리고 Jest 환경 설정 파일 jest.config.js를 프로젝트 루트에 생성하고 다음과 같이 설정합니다.

module.exports = {
  preset: 'ts-jest',
  testEnvironment: 'node',
  moduleNameMapper: {
    '^@/(.*)$': '<rootDir>/src/$1'
  }
}

테스트 작성

이제 src 디렉토리 아래에 테스트 파일을 생성하고 TypeScript로 작성합니다. 예를 들어 sum.test.ts 파일을 생성하여 아래와 같이 테스트 코드를 작성할 수 있습니다.

import { sum } from '@/sum';

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

테스트 실행

모든 준비가 끝났습니다! 이제 다음 명령어로 Jest를 실행하면 테스트가 자동으로 실행될 것입니다.

npm run test

테스트 자동화를 통해 TypeScript 프로젝트의 품질과 안정성을 유지할 수 있게 되었습니다. Jest 외에도 다양한 도구와 방법을 사용하여 보다 효과적으로 테스트 자동화를 구축할 수 있으니, 프로젝트에 맞는 방법을 선택하여 적용해보세요.

참고 자료