Skip to content
Vitest 3
Main Navigation 가이드 & API구성브라우저 모드고급 API
3.2.0
2.1.9
1.6.1
0.34.6

한국어

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
Italiano
Polski
Türkçe
čeština
magyar

한국어

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
Italiano
Polski
Türkçe
čeština
magyar

외관

Sidebar Navigation

소개

Vitest를 선택하는 이유

시작하기

기능

Vitest 구성하기

API

테스트 API 참조

Mock 함수

Vi

expect

expectTypeOf

assert

assertType

가이드

명령줄 인터페이스

테스트 필터링

테스트 프로젝트

리포터

커버리지

스냅샷

모킹

병렬 처리

타입 검사

Vitest UI

소스 내 테스팅

테스트 컨텍스트

테스트 어노테이션

테스트 환경

매처 확장하기

IDE 통합

디버깅

일반적인 오류

마이그레이션 가이드

Vitest 3.0으로 마이그레이션

Jest에서 마이그레이션

성능

테스트 성능 프로파일링

성능 향상

브라우저 모드

고급 API

다른 테스트 러너와의 비교

이 페이지에서

일반적인 오류 ​

모듈 './relative-path'을(를) 찾을 수 없습니다 ​

모듈을 찾을 수 없다는 오류가 발생하면 다음과 같은 몇 가지 원인이 있을 수 있습니다.

    1. 경로를 잘못 입력했을 수 있습니다. 경로가 올바른지 확인하십시오.
    1. tsconfig.json의 baseUrl에 의존하고 있을 수 있습니다. Vite는 기본적으로 tsconfig.json을 무시하므로, 이 기능을 사용하는 경우 vite-tsconfig-paths를 직접 설치해야 할 수 있습니다.
ts
import { defineConfig } from 'vitest/config';
import tsconfigPaths from 'vite-tsconfig-paths';

export default defineConfig({
  plugins: [tsconfigPaths()],
});

또는 경로를 루트에 상대적이지 않게 다시 작성하십시오.

diff
- import helpers from 'src/helpers'
+ import helpers from '../src/helpers'
    1. 상대 경로 별칭을 사용하고 있지 않은지 확인하십시오. Vite는 이를 루트가 아닌 가져오기가 있는 파일에 상대적인 것으로 처리합니다.
ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    alias: {
      '@/': './src/', 
      '@/': new URL('./src/', import.meta.url).pathname, 
    },
  },
});

워커 프로세스 종료 실패 ​

이 오류는 NodeJS의 fetch를 기본 pool: 'threads' 설정과 함께 사용할 때 발생할 수 있습니다. 이 문제는 Timeout abort can leave process(es) running in the background #3077 이슈를 통해 추적되고 있습니다.

임시 해결책으로 pool: 'forks' 또는 pool: 'vmForks'로 전환할 수 있습니다.

ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    pool: 'forks',
  },
});
bash
vitest --pool=forks

세그멘테이션 폴트 및 네이티브 코드 오류 ​

pool: 'threads'에서 네이티브 NodeJS 모듈을 실행할 경우, 네이티브 코드에서 발생하는 다음과 같은 이해하기 어려운 오류가 발생할 수 있습니다.

  • Segmentation fault (core dumped)
  • thread '<unnamed>' panicked at 'assertion failed
  • Abort trap: 6
  • internal error: entered unreachable code

이러한 경우 네이티브 모듈은 다중 스레드 환경에서 안전하게 동작하도록 빌드되지 않았을 가능성이 높습니다. 해결 방법으로, 테스트 케이스를 여러 node:worker_threads 대신 여러 node:child_process에서 실행하는 pool: 'forks'로 전환할 수 있습니다.

ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    pool: 'forks',
  },
});
bash
vitest --pool=forks
Pager
이전디버깅
다음마이그레이션 가이드

MIT 라이선스 하에 배포되었습니다.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/common-errors

MIT 라이선스 하에 배포되었습니다.

Copyright (c) 2021-Present Vitest Team