yarn create next-app ${project name} --typescript
TypeScript 기반으로 next.js 애플리케이션을 생성한다.
아래 글을 참고해주시면 감사하겠습니다.
(yarn berry 미 사용시 skip 하셔도 됩니다.)
https://kimyanglogging.tistory.com/8
yarn add -D jest jest-environment-jsdom @testing-library/react @testing-library/jest-dom
js의 예제로 구성된 공식 문서에는 위 커멘드만 나와있지만, typescript와 사용하기 위해서는 아래의 커멘드를 추가로 입력해야한다.
yarn add -D @types/jest @types/testing-library__jest-dom
나 같은 경우는 jest 실행 시, ts-node 관련 issue가 발생하여 아래 커멘드로 입력해주었다.
yarn add -D ts-jest
project 최상위 (package.json과 같은 위치)에 아래 파일들을 생성한다.
import nextJest from 'next/jest'
const createJestConfig = nextJest({
// Provide the path to your Next.js app to load next.config.js and .env files in your test environment
dir: './',
})
// Add any custom config to be passed to Jest
/** @type {import('jest').Config} */
const customJestConfig = {
setupFilesAfterEnv: ['<rootDir>/jest.setup.ts'],
moduleDirectories: ['.yarn', '<rootDir>/'],
testEnvironment: 'jest-environment-jsdom',
}
export default createJestConfig(customJestConfig)
import '@testing-library/jest-dom/extend-expect'
테스트 파일 (ex. "*.test.tsx")을 작성 후 jest 커맨드 (ex. yarn jest --watch --coverage)를 입력하면 정상적으로 동작한다.
https://nextjs.org/docs/testing#setting-up-jest-with-the-rust-compiler
https://github.com/vercel/next.js/tree/canary/examples/with-jest
[JavaScript] JS는 무슨 언어일까? (0) | 2023.01.18 |
---|---|
[yarn berry + vscode] yarn berry 적용 방법 (with vscode setting) (6) | 2023.01.17 |
[JavaScript] truthy, falsy 값 판별하는 간단한 방법 (0) | 2023.01.08 |
[React + TypeScript] 무한 스크롤 구현하기 (0) | 2023.01.04 |
[JavaScript] Array.map과 함께 async, await 사용하기 (0) | 2022.12.13 |
댓글 영역