[javascript] Jest에서의 테스트 환경구성 범위 지정 방법은 어떻게 되는가?

Jest는 자바스크립트 테스트 프레임워크로, 코드의 품질을 유지하고 버그를 줄이는 데 도움을 줍니다. Jest를 사용하여 테스트를 작성할 때, 테스트를 실행하기 전에 테스트 대상의 범위를 지정할 수 있습니다.

Jest는 크게 두 가지 방법으로 테스트 환경을 구성할 수 있습니다.

  1. 파일 단위의 범위 지정: 단일 파일에 대한 테스트를 실행할 때 사용할 수 있습니다. test 또는 it 함수를 사용하여 해당 파일 내의 특정 함수 또는 메서드에 대한 테스트를 작성하고 실행할 수 있습니다.

예제 코드:

// math.js

export function sum(a, b) {
  return a + b;
}

export function subtract(a, b) {
  return a - b;
}

// math.test.js

import { sum, subtract } from './math';

test('덧셈 함수 테스트', () => {
  expect(sum(1, 2)).toBe(3);
});

test('뺄셈 함수 테스트', () => {
  expect(subtract(2, 1)).toBe(1);
});

위의 코드에서 math.js 파일에는 sum()subtract() 함수가 정의되어 있습니다. math.test.js 파일에서는 해당 함수들에 대한 테스트를 작성하고 실행합니다.

  1. 디렉토리 단위의 범위 지정: 여러 파일에 걸쳐 테스트를 실행할 때 사용할 수 있습니다. describe 함수를 사용하여 여러 테스트를 그룹화하고, test 또는 it 함수를 사용하여 각 테스트를 작성하고 실행할 수 있습니다.

예제 코드:

// math.js

export function sum(a, b) {
  return a + b;
}

// math.test.js

import { sum } from './math';

describe('수학 함수 테스트', () => {
  test('덧셈 함수 테스트', () => {
    expect(sum(1, 2)).toBe(3);
  });

  test('덧셈 함수에 대한 실패 테스트', () => {
    expect(sum(3, 4)).toBe(7);
  });
});

위의 코드에서 math.js 파일에는 sum() 함수가 정의되어 있습니다. math.test.js 파일에서는 describe 함수를 사용하여 ‘수학 함수 테스트’라는 그룹을 생성하고, 그룹 내에서 각각의 테스트를 작성하고 실행합니다.

테스트 환경구성 범위 지정은 Jest를 사용하여 테스트를 작성하는 데 있어서 유용하게 사용될 수 있는 기능입니다. 이를 통해 테스트의 집중도를 조절하고 필요한 범위에 대해서만 테스트를 수행할 수 있습니다.

더 자세한 내용은 Jest 공식 문서를 참조하세요.