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

다른 테스트 러너와의 비교

이 페이지에서

병렬 처리 ​

파일 병렬 처리 ​

기본적으로 Vitest는 _테스트 파일_을 병렬로 실행합니다. 지정된 pool 설정에 따라 Vitest는 테스트 파일을 병렬화하기 위해 다양한 메커니즘을 사용합니다:

  • forks(기본값) 및 vmForks는 별도의 자식 프로세스에서 테스트를 실행합니다.
  • threads 및 vmThreads는 별도의 워커 스레드에서 테스트를 실행합니다.

"자식 프로세스"와 "워커 스레드"는 모두 "워커"라고 불립니다. 실행 중인 워커 수는 minWorkers 및 maxWorkers 옵션으로 설정할 수 있습니다. 또는 poolOptions 구성을 통해 더 세밀하게 제어할 수 있습니다.

테스트가 많은 경우 병렬로 실행하는 것이 일반적으로 더 빠르지만, 이는 프로젝트, 환경 및 격리 설정에 따라 달라집니다. 파일 병렬 처리를 비활성화하려면 fileParallelism을 false로 설정할 수 있습니다. 가능한 성능 향상에 대해 자세히 알아보려면 성능 가이드를 읽어보세요.

테스트 병렬 처리 ​

_테스트 파일_과 달리 Vitest는 _테스트_를 순차적으로 실행합니다. 즉, 단일 테스트 파일 내의 테스트는 정의된 순서대로 실행됩니다.

Vitest는 테스트를 동시에 실행하기 위해 concurrent 옵션을 지원합니다. 이 옵션이 설정되면 Vitest는 같은 파일 내의 동시 테스트를 그룹화하고(동시에 실행되는 테스트 수는 maxConcurrency 옵션에 따라 달라집니다) Promise.all로 실행합니다.

Vitest는 특별한 분석을 수행하지 않으며 이러한 테스트를 실행하기 위해 추가 워커를 생성하지 않습니다. 즉, 비동기 작업에 많이 의존하는 경우에만 테스트 성능이 향상됩니다. 예를 들어, concurrent 옵션이 지정되었더라도 아래 예시의 테스트는 동기식이기 때문에 계속해서 순차적으로 실행됩니다:

ts
test.concurrent('the first test', () => {
  expect(1).toBe(1);
});

test.concurrent('the second test', () => {
  expect(2).toBe(2);
});

모든 테스트를 동시에 실행하려면 sequence.concurrent 옵션을 true로 설정할 수 있습니다.

Pager
이전모킹
다음타입 검사

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

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/parallelism

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

Copyright (c) 2021-Present Vitest Team