jest/require-top-level-describe 스타일
작동 방식
테스트 케이스 및 훅을 상위 레벨의 describe 블록 내부에 위치하도록 요구합니다.
왜 문제가 되는가?
테스트 케이스와 훅을 describe 블록 내에 조직하면 테스트 세트에 더 나은 구조와 그룹화가 가능해집니다. 이를 통해 테스트 출력이 더 읽기 쉬워지고, 특히 대규모 코드베이스에서 테스트 조직에 도움이 됩니다.
이 규칙은 테스트 케이스(test 및 it) 또는 훅(beforeAll, beforeEach, afterEach, afterAll)가 상위 레벨의 describe 블록 외부에 위치한 경우 경고를 발생시킵니다.
예시
이 규칙에 부적절한 코드 예시:
javascript
// describe 블록 위에 있는 경우
test("내 테스트", () => {});
describe("테스트 세트", () => {
it("테스트", () => {});
});
// describe 블록 아래에 있는 경우
describe("테스트 세트", () => {});
test("내 테스트", () => {});
// 훅도 동일
beforeAll("내 beforeAll", () => {});
describe("테스트 세트", () => {});
afterEach("내 afterEach", () => {});이 규칙에 적절한 코드 예시:
javascript
// describe 블록 위에 있는 경우
// describe 블록 내부에 있는 경우
describe("테스트 세트", () => {
test("내 테스트", () => {});
});
// 중첩된 describe 블록 내부에 있는 경우
describe("테스트 세트", () => {
test("내 테스트", () => {});
describe("다른 테스트 세트", () => {
test("내 다른 테스트", () => {});
});
});이 규칙은 eslint-plugin-vitest와 호환됩니다. 이를 사용하려면 .oxlintrc.json 파일에 다음 설정을 추가하세요:
json
{
"rules": {
"vitest/require-top-level-describe": "error"
}
}구성
이 규칙은 다음과 같은 속성을 가진 구성 객체를 받습니다:
maxNumberOfTopLevelDescribes
type: integer
기본값: 18446744073709551615
테스트 파일 내에서 허용되는 최대 상위 레벨 describe 블록 수입니다.
사용 방법
이 규칙을 활성화하려면 설정 파일이나 명령줄 인터페이스를 사용할 수 있습니다:
json
{
"plugins": ["jest"],
"rules": {
"jest/require-top-level-describe": "error"
}
}bash
oxlint --deny jest/require-top-level-describe --jest-plugin