[typescript] 타입스크립트와 Jest를 활용하여 문서화된 테스트를 작성하는 방법

타입스크립트는 정적 타입 검사를 제공하여 안정적이고 확장성 있는 코드를 작성하는 데 도움이 됩니다. Jest는 테스트 프레임워크로, 테스트를 작성하고 실행하는 데 사용됩니다. 타입스크립트와 Jest를 결합하여 문서화된 테스트를 작성하는 방법을 살펴보겠습니다.

1. 타입스크립트 프로젝트 설정하기

먼저 타입스크립트 프로젝트를 설정합니다. tsconfig.json 파일을 만들고 필요한 환경 설정을 추가합니다.

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "strict": true
  }
}

2. Jest 설치 및 설정

Jest를 설치하고 필요한 구성을 추가합니다.

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

package.json 파일에 테스트 스크립트를 추가합니다.

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

Jest 구성을 위한 jest.config.js 파일을 프로젝트 루트에 만들고 다음과 같이 구성합니다.

module.exports = {
  preset: 'ts-jest',
  testEnvironment: 'node',
};

3. 문서화된 테스트 작성하기

문서화된 테스트는 테스트 코드 내에 설명을 포함하여 가독성을 높이는 방법입니다. 예를 들어, calculateSum 함수에 대한 테스트를 작성해보겠습니다.

// calculateSum.test.ts

/**
 * `calculateSum` 함수의 테스트
 */
describe('calculateSum 함수', () => {
  /**
   * 두 숫자의 합을 반환한다.
   */
  it('두 숫자의 합을 반환한다.', () => {
    expect(calculateSum(1, 2)).toBe(3);
  });

  /**
   * 음수를 포함한 숫자의 합을 반환한다.
   */
  it('음수를 포함한 숫자의 합을 반환한다.', () => {
    expect(calculateSum(-1, 2)).toBe(1);
  });
});

위 예시에서 볼 수 있듯이, 각 테스트 케이스에 설명을 추가하여 어떤 테스트를 하는지 명확히 들어낼 수 있습니다.

4. 테스트 실행

모든 설정이 완료되면 터미널에서 npm test 명령어를 실행하여 테스트를 수행할 수 있습니다.

이렇게 하면 타입스크립트와 Jest를 활용하여 문서화된 테스트를 작성하고 실행할 수 있습니다. 코드의 가독성을 높이고 유지보수성을 개선할 수 있는데, 도움이 되길 바랍니다.

참고: Jest 공식 문서 (https://jestjs.io/docs/getting-started)