[javascript] Jest에서의 테스트 파일 실행 순서 지정 방법은 어떻게 되는가?

테스트 파일의 실행 순서를 지정하는 방법으로는 두 가지가 있습니다. 하나는 testPathIgnorePatterns 옵션을 사용하여 일부 파일을 무시하는 방법이고, 다른 하나는 testSequencer를 사용하여 커스텀 테스트 순서를 작성하는 방법입니다.

1. testPathIgnorePatterns 옵션을 사용하는 방법:

Jest의 testPathIgnorePatterns 옵션은 특정 파일이나 폴더의 실행을 무시하도록 설정할 수 있습니다. 이를 사용하여 테스트 파일의 실행 순서를 제어할 수 있습니다.

jest.config.js 파일에 다음과 같이 testPathIgnorePatterns 옵션을 추가합니다:

module.exports = {
  //...
  testPathIgnorePatterns: [
    '/path/to/ignore/file.js',
    '/path/to/ignore/folder/'
  ],
  //...
};

위의 예시에서 '/path/to/ignore/file.js''/path/to/ignore/folder/'는 테스트 파일 실행에서 무시됩니다.

2. testSequencer를 사용하는 방법:

Jest의 testSequencer를 사용하면 커스텀 테스트 순서를 작성할 수 있습니다. 이를 사용하면 테스트 파일 실행 순서를 자세하게 제어할 수 있습니다.

jest.config.js 파일에 다음과 같이 testSequencer를 작성합니다:

module.exports = {
  //...
  testSequencer: './testSequencer.js',
  //...
};

testSequencer.js 파일을 생성하고 원하는 방식으로 테스트 파일을 정렬하는 로직을 작성합니다. 예를 들어, 다음과 같이 파일 이름을 기준으로 오름차순으로 정렬할 수 있습니다:

const { sequencer: DefaultSequencer } = require('@jest/test-sequencer');

class CustomSequencer extends DefaultSequencer {
  sort(tests) {
    const copyTests = Array.from(tests);
    return copyTests.sort((testA, testB) => {
      if (testA.path > testB.path) {
        return 1;
      } else if (testA.path < testB.path) {
        return -1;
      }
      return 0;
    });
  }
}

module.exports = CustomSequencer;

위의 예시에서는 테스트 파일 이름을 기준으로 정렬하는 CustomSequencer를 작성하여 사용합니다.

Jest에서 테스트 파일 실행 순서를 제어하는 방법에 대해 알아보았습니다. testPathIgnorePatterns 옵션을 사용하여 파일 무시 또는 testSequencer를 사용하여 커스텀 테스트 순서를 작성할 수 있습니다. 이를 통해 테스트 파일 실행 순서를 원하는 대로 조정할 수 있습니다.

참고: