2022-01-30

이것 때문에 삽질을 좀 했었다.

그냥 VanillaJS나 Vue.js, React에서 테스트 프레임워크를 추가할 때는

별 문제없이 잘 됐었는데,

유독 Next.js에서는 어떻게 해도 계속 에러가 났었다.

하지만 오랜 삽질 끝에 테스트가 동작될 수 있도록 하는 걸 성공했고,

그 방법을 여기 적어보려 한다.

우선 필요한 라이브러리를 설치한다.

테스트는 개발용이기 때문에 -D--save-dev 옵션을 붙혀준다.

npm i -D jest @testing-library/jest-dom @testing-library/react @testing-library/user-event babel-jest

그리고 프로젝트 루트 폴더에 jest.config.js, jest.setup.js라는

두 개의 파일을 생성하여 다음과 같이 작성한다.

// jest.config.js

const nextJest = require("next/jest");

module.exports = nextJest()({
    setupFilesAfterEnv: [
        "@testing-library/jest-dom/extend-expect",
        "@testing-library/react"
    ]
});