명령줄 인터페이스
명령
vitest
현재 디렉터리에서 Vitest를 시작합니다. 개발 환경에서는 watch 모드로, CI 환경(또는 비대화형 터미널)에서는 run 모드로 자동 실행됩니다.
실행할 테스트 파일의 필터로 추가 인수를 전달할 수 있습니다. 예를 들어:
vitest foobar
경로에 foobar
가 포함된 테스트 파일만 실행합니다. 이 필터는 포함 여부만 확인하며, 정규식이나 glob 패턴은 지원하지 않습니다(Vitest가 필터를 받기 전에 터미널이 이를 처리하는 경우가 아니라면).
Vitest 3부터는 파일 이름과 줄 번호로 테스트를 지정할 수도 있습니다:
$ vitest basic/foo.test.ts:10
WARNING
이 기능이 제대로 작동하려면 Vitest는 전체 파일 이름이 필요합니다. 이는 현재 작업 디렉터리에 대한 상대 경로이거나 절대 파일 경로일 수 있습니다.
$ vitest basic/foo.js:10 # ✅
$ vitest ./basic/foo.js:10 # ✅
$ vitest /users/project/basic/foo.js:10 # ✅
$ vitest foo:10 # ❌
$ vitest ./basic/foo:10 # ❌
현재 Vitest는 범위 지정을 지원하지 않습니다:
$ vitest basic/foo.test.ts:10, basic/foo.test.ts:25 # ✅
$ vitest basic/foo.test.ts:10-25 # ❌
vitest run
watch 모드 없이 단일 실행을 수행합니다.
vitest watch
모든 테스트 스위트를 실행하며, 변경 사항을 감시하고 변경 시 테스트를 다시 실행합니다. 인자 없이 vitest
를 호출하는 것과 같습니다. CI 환경이거나 표준 입력이 TTY가 아닌 경우(비대화형 환경) vitest run
으로 대체됩니다.
vitest dev
vitest watch
의 별칭입니다.
vitest related
소스 파일 목록을 커버하는 테스트만 실행합니다. 정적 import(예: import('./index.js')
또는 import index from './index.js
)에서는 작동하지만 동적 import(예: import(filepath)
)에서는 작동하지 않습니다. 모든 파일은 루트 폴더를 기준으로 하는 상대 경로여야 합니다.
lint-staged
또는 CI 설정과 함께 실행할 때 유용합니다.
vitest related /src/index.ts /src/hello-world.js
TIP
Vitest는 기본적으로 watch 모드가 활성화된 상태로 실행된다는 점을 유의하십시오. lint-staged
와 같은 도구를 사용하는 경우, 명령이 정상적으로 종료될 수 있도록 --run
옵션도 함께 전달해야 합니다.
export default {
'*.{js,ts}': 'vitest related --run',
};
vitest bench
성능 결과를 비교하는 벤치마크 테스트만 수행합니다.
vitest init
vitest init <name>
은 프로젝트 구성을 설정하는 데 사용될 수 있습니다. 현재는 browser
값만 지원합니다:
vitest init browser
vitest list
vitest list
명령은 일치하는 모든 테스트 목록을 출력하기 위해 모든 vitest
옵션을 따릅니다. 이 명령은 reporters
옵션을 무시합니다. 기본적으로 파일 필터와 이름 패턴에 일치하는 모든 테스트의 이름을 출력합니다:
vitest list filename.spec.ts -t="some-test"
describe > some-test
describe > some-test > test 1
describe > some-test > test 2
--json
플래그를 사용하여 테스트를 JSON 형식으로 출력하거나 별도의 파일에 저장할 수 있습니다:
vitest list filename.spec.ts -t="some-test" --json=./file.json
--json
플래그에 값이 제공되지 않으면 JSON을 표준 출력(stdout)으로 내보냅니다.
--filesOnly
플래그를 사용하여 테스트 파일만 출력할 수도 있습니다:
vitest list --filesOnly
tests/test1.test.ts
tests/test2.test.ts
옵션
TIP
Vitest는 CLI 인수에 대해 camel case와 kebab case를 모두 지원합니다. 예를 들어, --passWithNoTests
와 --pass-with-no-tests
는 모두 유효합니다(--no-color
와 --inspect-brk
는 예외).
Vitest는 값을 지정하는 다양한 방식도 지원합니다: --reporter dot
과 --reporter=dot
은 모두 유효합니다.
옵션이 값 배열을 지원하는 경우, 해당 옵션을 여러 번 전달해야 합니다:
vitest --reporter=dot --reporter=default
부울 옵션은 no-
접두사를 사용하여 부정할 수 있습니다. 값을 false
로 지정하는 것도 유효합니다:
vitest --no-api
vitest --api=false
root
- CLI:
-r, --root <path>
- Config: root
루트 경로를 지정합니다.
config
- CLI:
-c, --config <path>
설정 파일 경로를 지정합니다.
update
- CLI:
-u, --update
- Config: update
스냅샷을 업데이트합니다.
watch
- CLI:
-w, --watch
- Config: watch
감시 모드를 활성화합니다.
testNamePattern
- CLI:
-t, --testNamePattern <pattern>
- Config: testNamePattern
지정된 정규식 패턴과 일치하는 전체 이름을 가진 테스트를 실행합니다.
dir
- CLI:
--dir <path>
- Config: dir
테스트 파일을 스캔할 기본 디렉터리를 지정합니다.
ui
- CLI:
--ui
- Config: ui
UI를 활성화합니다.
open
- CLI:
--open
- Config: open
UI를 자동으로 엽니다 (기본값: !process.env.CI
).
api.port
- CLI:
--api.port [port]
서버 포트를 지정합니다. 포트가 이미 사용 중인 경우 Vite는 자동으로 다음 사용 가능한 포트를 시도하므로, 실제 서버가 사용하는 포트와 다를 수 있습니다. true
로 설정하면 51204
로 설정됩니다.
api.host
- CLI:
--api.host [host]
서버가 수신할 IP 주소를 지정합니다. LAN 및 공용 주소를 포함한 모든 주소에서 수신하도록 설정하려면 0.0.0.0
또는 true
로 설정합니다.
api.strictPort
- CLI:
--api.strictPort
포트가 이미 사용 중일 때 다음 사용 가능한 포트를 자동으로 시도하지 않고 종료하려면 true
로 설정합니다.
silent
- CLI:
--silent [value]
- Config: silent
테스트의 콘솔 출력을 숨깁니다. 실패한 테스트의 로그만 보려면 'passed-only'
를 사용합니다.
hideSkippedTests
- CLI:
--hideSkippedTests
건너뛴 테스트의 로그를 숨깁니다.
reporters
- CLI:
--reporter <name>
- Config: reporters
리포터를 지정합니다 (default, basic, blob, verbose, dot, json, tap, tap-flat, junit, hanging-process, github-actions).
outputFile
- CLI:
--outputFile <filename/-s>
- Config: outputFile
지원하는 리포터가 지정된 경우 테스트 결과를 파일에 기록합니다. 여러 리포터의 개별 출력을 위해 cac의 점 표기법을 사용합니다 (예: --outputFile.tap=./tap.txt
).
coverage.all
- CLI:
--coverage.all
- Config: coverage.all
테스트되지 않은 파일을 포함한 모든 파일을 보고서에 포함할지 여부를 지정합니다.
coverage.provider
- CLI:
--coverage.provider <name>
- Config: coverage.provider
커버리지 수집에 사용할 도구를 선택합니다. 사용 가능한 값은 "v8", "istanbul" 및 "custom"입니다.
coverage.enabled
- CLI:
--coverage.enabled
- Config: coverage.enabled
커버리지 수집을 활성화합니다. --coverage
CLI 옵션을 사용하여 재정의할 수 있습니다 (기본값: false
).
coverage.include
- CLI:
--coverage.include <pattern>
- Config: coverage.include
커버리지에 포함할 파일 (glob 패턴)을 지정합니다. 여러 패턴을 사용할 때 여러 번 지정할 수 있습니다 (기본값: **
).
coverage.exclude
- CLI:
--coverage.exclude <pattern>
- Config: coverage.exclude
커버리지에서 제외할 파일을 지정합니다. 여러 패턴을 사용할 때 여러 번 지정할 수 있습니다 (기본값: coverage.exclude
참조).
coverage.extension
- CLI:
--coverage.extension <extension>
- Config: coverage.extension
커버리지에 포함될 확장자를 지정합니다. 여러 확장자를 사용할 때 여러 번 지정할 수 있습니다 (기본값: [".js", ".cjs", ".mjs", ".ts", ".mts", ".tsx", ".jsx", ".vue", ".svelte"]
).
coverage.clean
- CLI:
--coverage.clean
- Config: coverage.clean
테스트 실행 전에 커버리지 결과를 정리합니다 (기본값: true
).
coverage.cleanOnRerun
- CLI:
--coverage.cleanOnRerun
- Config: coverage.cleanOnRerun
감시 재실행 시 커버리지 보고서를 정리합니다 (기본값: true
).
coverage.reportsDirectory
- CLI:
--coverage.reportsDirectory <path>
- Config: coverage.reportsDirectory
커버리지 보고서를 작성할 디렉터리를 지정합니다 (기본값: ./coverage
).
coverage.reporter
- CLI:
--coverage.reporter <name>
- Config: coverage.reporter
사용할 커버리지 리포터를 지정합니다. 자세한 내용은 coverage.reporter
를 참조하십시오 (기본값: ["text", "html", "clover", "json"]
).
coverage.reportOnFailure
- CLI:
--coverage.reportOnFailure
- Config: coverage.reportOnFailure
테스트가 실패하더라도 커버리지 보고서를 생성합니다 (기본값: false
).
coverage.allowExternal
- CLI:
--coverage.allowExternal
- Config: coverage.allowExternal
프로젝트 루트 외부 파일의 커버리지를 수집합니다 (기본값: false
).
coverage.skipFull
- CLI:
--coverage.skipFull
- Config: coverage.skipFull
100% 문, 분기 및 함수 커버리지를 가진 파일은 표시하지 않습니다 (기본값: false
).
coverage.thresholds.100
- CLI:
--coverage.thresholds.100
- Config: coverage.thresholds.100
모든 커버리지 임계값을 100으로 설정하는 단축키입니다 (기본값: false
).
coverage.thresholds.perFile
- CLI:
--coverage.thresholds.perFile
- Config: coverage.thresholds.perFile
파일별 임계값을 확인합니다. 실제 임계값은 --coverage.thresholds.lines
, --coverage.thresholds.functions
, --coverage.thresholds.branches
및 --coverage.thresholds.statements
를 참조하십시오 (기본값: false
).
coverage.thresholds.autoUpdate
- CLI:
--coverage.thresholds.autoUpdate
- Config: coverage.thresholds.autoUpdate
현재 커버리지가 구성된 임계값보다 높을 때 "lines", "functions", "branches" 및 "statements" 임계값 값을 구성 파일로 업데이트합니다 (기본값: false
).
coverage.thresholds.lines
- CLI:
--coverage.thresholds.lines <number>
라인에 대한 임계값입니다. 자세한 내용은 istanbuljs를 참조하십시오. 이 옵션은 사용자 지정 공급자에게는 사용할 수 없습니다.
coverage.thresholds.functions
- CLI:
--coverage.thresholds.functions <number>
함수에 대한 임계값입니다. 자세한 내용은 istanbuljs를 참조하십시오. 이 옵션은 사용자 지정 공급자에게는 사용할 수 없습니다.
coverage.thresholds.branches
- CLI:
--coverage.thresholds.branches <number>
분기에 대한 임계값입니다. 자세한 내용은 istanbuljs를 참조하십시오. 이 옵션은 사용자 지정 공급자에게는 사용할 수 없습니다.
coverage.thresholds.statements
- CLI:
--coverage.thresholds.statements <number>
문에 대한 임계값입니다. 자세한 내용은 istanbuljs를 참조하십시오. 이 옵션은 사용자 지정 공급자에게는 사용할 수 없습니다.
coverage.ignoreClassMethods
- CLI:
--coverage.ignoreClassMethods <name>
- Config: coverage.ignoreClassMethods
커버리지에서 무시할 클래스 메서드 이름 배열입니다. 자세한 내용은 istanbuljs를 참조하십시오. 이 옵션은 istanbul 공급자에게만 적용됩니다 (기본값: []
).
coverage.processingConcurrency
- CLI:
--coverage.processingConcurrency <number>
- Config: coverage.processingConcurrency
커버리지 결과를 처리할 때 사용되는 동시성 제한입니다 (기본값: 20과 CPU 수 중 작은 값).
coverage.customProviderModule
- CLI:
--coverage.customProviderModule <path>
- Config: coverage.customProviderModule
사용자 지정 커버리지 공급자 모듈의 모듈 이름 또는 경로를 지정합니다. 자세한 내용은 Custom Coverage Provider를 참조하십시오. 이 옵션은 사용자 지정 공급자에게만 적용됩니다.
coverage.watermarks.statements
- CLI:
--coverage.watermarks.statements <watermarks>
<high>,<low>
형식의 문에 대한 상한 및 하한 워터마크입니다.
coverage.watermarks.lines
- CLI:
--coverage.watermarks.lines <watermarks>
<high>,<low>
형식의 라인에 대한 상한 및 하한 워터마크입니다.
coverage.watermarks.branches
- CLI:
--coverage.watermarks.branches <watermarks>
<high>,<low>
형식의 분기에 대한 상한 및 하한 워터마크입니다.
coverage.watermarks.functions
- CLI:
--coverage.watermarks.functions <watermarks>
<high>,<low>
형식의 함수에 대한 상한 및 하한 워터마크입니다.
mode
- CLI:
--mode <name>
- Config: mode
Vite 모드를 재정의합니다 (기본값: test
또는 benchmark
).
workspace
- CLI:
--workspace <path>
- Config: workspace
[더 이상 사용되지 않음] 작업 공간 구성 파일 경로입니다.
isolate
- CLI:
--isolate
- Config: isolate
모든 테스트 파일을 격리하여 실행합니다. 격리를 비활성화하려면 --no-isolate
을 사용합니다 (기본값: true
).
globals
- CLI:
--globals
- Config: globals
API를 전역으로 주입합니다.
dom
- CLI:
--dom
happy-dom으로 브라우저 API를 모의합니다.
browser.enabled
- CLI:
--browser.enabled
- Config: browser.enabled
브라우저에서 테스트를 실행합니다. CLI 옵션 --browser.enabled
와 동일합니다 (기본값: false
).
browser.name
- CLI:
--browser.name <name>
- Config: browser.name
특정 브라우저에서 모든 테스트를 실행합니다. 일부 브라우저는 특정 공급자에게만 사용할 수 있습니다 (--browser.provider
참조). 자세한 내용은 browser.name
을 참조하십시오.
browser.headless
- CLI:
--browser.headless
- Config: browser.headless
브라우저를 헤드리스 모드(즉, GUI(그래픽 사용자 인터페이스)를 열지 않고)로 실행합니다. Vitest를 CI 환경에서 실행하는 경우 기본적으로 활성화됩니다 (기본값: process.env.CI
).
browser.api.port
- CLI:
--browser.api.port [port]
- Config: browser.api.port
서버 포트를 지정합니다. 포트가 이미 사용 중인 경우 Vite는 자동으로 다음 사용 가능한 포트를 시도하므로, 실제 서버가 수신하는 포트가 아닐 수 있습니다. true
로 설정하면 63315
로 설정됩니다.
browser.api.host
- CLI:
--browser.api.host [host]
- Config: browser.api.host
서버가 수신할 IP 주소를 지정합니다. LAN 및 공용 주소를 포함한 모든 주소에서 수신하려면 0.0.0.0
또는 true
로 설정합니다.
browser.api.strictPort
- CLI:
--browser.api.strictPort
- Config: browser.api.strictPort
포트가 이미 사용 중인 경우 자동으로 다음 사용 가능한 포트를 시도하는 대신 종료하려면 true
로 설정합니다.
browser.provider
- CLI:
--browser.provider <name>
- Config: browser.provider
브라우저 테스트를 실행하는 데 사용되는 공급자입니다. 일부 브라우저는 특정 공급자에게만 사용할 수 있습니다. "webdriverio", "playwright", "preview" 또는 사용자 지정 공급자의 경로를 지정할 수 있습니다. 자세한 내용은 browser.provider
를 참조하십시오 (기본값: "preview"
).
browser.providerOptions
- CLI:
--browser.providerOptions <options>
- Config: browser.providerOptions
브라우저 공급자에게 전달되는 옵션입니다. 자세한 내용은 browser.providerOptions
를 참조하십시오.
browser.isolate
- CLI:
--browser.isolate
- Config: browser.isolate
모든 브라우저 테스트 파일을 격리하여 실행합니다. 격리를 비활성화하려면 --browser.isolate=false
를 사용합니다 (기본값: true
).
browser.ui
- CLI:
--browser.ui
- Config: browser.ui
테스트 실행 시 Vitest UI를 표시합니다 (기본값: !process.env.CI
).
browser.fileParallelism
- CLI:
--browser.fileParallelism
- Config: browser.fileParallelism
브라우저 테스트 파일을 병렬로 실행해야 하는지 여부를 지정합니다. 비활성화하려면 --browser.fileParallelism=false
를 사용합니다 (기본값: true
).
browser.connectTimeout
- CLI:
--browser.connectTimeout <timeout>
- Config: browser.connectTimeout
브라우저 연결에 시간이 오래 걸리면 테스트 스위트가 실패합니다 (기본값: 60_000
).
pool
- CLI:
--pool <pool>
- Config: pool
브라우저에서 실행하지 않는 경우 풀을 지정합니다 (기본값: forks
).
poolOptions.threads.isolate
- CLI:
--poolOptions.threads.isolate
- Config: poolOptions.threads.isolate
스레드 풀에서 테스트를 격리합니다 (기본값: true
).
poolOptions.threads.singleThread
- CLI:
--poolOptions.threads.singleThread
- Config: poolOptions.threads.singleThread
단일 스레드 내에서 테스트를 실행합니다 (기본값: false
).
poolOptions.threads.maxThreads
- CLI:
--poolOptions.threads.maxThreads <workers>
- Config: poolOptions.threads.maxThreads
테스트를 실행할 최대 스레드 수 또는 비율을 지정합니다.
poolOptions.threads.minThreads
- CLI:
--poolOptions.threads.minThreads <workers>
- Config: poolOptions.threads.minThreads
테스트를 실행할 최소 스레드 수 또는 비율을 지정합니다.
poolOptions.threads.useAtomics
- CLI:
--poolOptions.threads.useAtomics
- Config: poolOptions.threads.useAtomics
스레드 동기화에 Atomics를 사용합니다. 경우에 따라 성능을 향상시킬 수 있지만, 이전 Node 버전에서는 세그먼트 오류(segfault)가 발생할 수 있습니다 (기본값: false
).
poolOptions.vmThreads.isolate
- CLI:
--poolOptions.vmThreads.isolate
- Config: poolOptions.vmThreads.isolate
VM 스레드 풀에서 테스트를 격리합니다 (기본값: true
).
poolOptions.vmThreads.singleThread
- CLI:
--poolOptions.vmThreads.singleThread
- Config: poolOptions.vmThreads.singleThread
단일 스레드 내에서 테스트를 실행합니다 (기본값: false
).
poolOptions.vmThreads.maxThreads
- CLI:
--poolOptions.vmThreads.maxThreads <workers>
- Config: poolOptions.vmThreads.maxThreads
테스트를 실행할 최대 스레드 수 또는 비율을 지정합니다.
poolOptions.vmThreads.minThreads
- CLI:
--poolOptions.vmThreads.minThreads <workers>
- Config: poolOptions.vmThreads.minThreads
테스트를 실행할 최소 스레드 수 또는 비율을 지정합니다.
poolOptions.vmThreads.useAtomics
- CLI:
--poolOptions.vmThreads.useAtomics
- Config: poolOptions.vmThreads.useAtomics
스레드 동기화에 Atomics를 사용합니다. 경우에 따라 성능을 향상시킬 수 있지만, 이전 Node 버전에서는 세그먼트 오류(segfault)가 발생할 수 있습니다 (기본값: false
).
poolOptions.vmThreads.memoryLimit
- CLI:
--poolOptions.vmThreads.memoryLimit <limit>
- Config: poolOptions.vmThreads.memoryLimit
VM 스레드 풀의 메모리 제한입니다. 메모리 누수가 발생하면 이 값을 조정해 볼 수 있습니다.
poolOptions.forks.isolate
- CLI:
--poolOptions.forks.isolate
- Config: poolOptions.forks.isolate
포크 풀에서 테스트를 격리합니다 (기본값: true
).
poolOptions.forks.singleFork
- CLI:
--poolOptions.forks.singleFork
- Config: poolOptions.forks.singleFork
단일 child_process 내에서 테스트를 실행합니다 (기본값: false
).
poolOptions.forks.maxForks
- CLI:
--poolOptions.forks.maxForks <workers>
- Config: poolOptions.forks.maxForks
테스트를 실행할 최대 프로세스 수 또는 비율을 지정합니다.
poolOptions.forks.minForks
- CLI:
--poolOptions.forks.minForks <workers>
- Config: poolOptions.forks.minForks
테스트를 실행할 최소 프로세스 수 또는 비율을 지정합니다.
poolOptions.vmForks.isolate
- CLI:
--poolOptions.vmForks.isolate
- Config: poolOptions.vmForks.isolate
VM 포크 풀에서 테스트를 격리합니다 (기본값: true
).
poolOptions.vmForks.singleFork
- CLI:
--poolOptions.vmForks.singleFork
- Config: poolOptions.vmForks.singleFork
단일 child_process 내에서 테스트를 실행합니다 (기본값: false
).
poolOptions.vmForks.maxForks
- CLI:
--poolOptions.vmForks.maxForks <workers>
- Config: poolOptions.vmForks.maxForks
테스트를 실행할 최대 프로세스 수 또는 비율을 지정합니다.
poolOptions.vmForks.minForks
- CLI:
--poolOptions.vmForks.minForks <workers>
- Config: poolOptions.vmForks.minForks
테스트를 실행할 최소 프로세스 수 또는 비율을 지정합니다.
poolOptions.vmForks.memoryLimit
- CLI:
--poolOptions.vmForks.memoryLimit <limit>
- Config: poolOptions.vmForks.memoryLimit
VM 포크 풀의 메모리 제한입니다. 메모리 누수가 발생하면 이 값을 조정해 볼 수 있습니다.
fileParallelism
- CLI:
--fileParallelism
- Config: fileParallelism
모든 테스트 파일을 병렬로 실행할지 여부를 지정합니다. 비활성화하려면 --no-file-parallelism
을 사용합니다 (기본값: true
).
maxWorkers
- CLI:
--maxWorkers <workers>
- Config: maxWorkers
테스트를 실행할 최대 워커 수 또는 비율을 지정합니다.
minWorkers
- CLI:
--minWorkers <workers>
- Config: minWorkers
테스트를 실행할 최소 워커 수 또는 비율을 지정합니다.
environment
- CLI:
--environment <name>
- Config: environment
브라우저에서 실행하지 않는 경우 러너 환경을 지정합니다 (기본값: node
).
passWithNoTests
- CLI:
--passWithNoTests
- Config: passWithNoTests
테스트가 발견되지 않아도 통과합니다.
logHeapUsage
- CLI:
--logHeapUsage
- Config: logHeapUsage
Node.js에서 실행할 때 각 테스트의 힙 사용량을 표시합니다.
allowOnly
- CLI:
--allowOnly
- Config: allowOnly
only
로 표시된 테스트 및 스위트를 허용합니다 (기본값: !process.env.CI
).
dangerouslyIgnoreUnhandledErrors
- CLI:
--dangerouslyIgnoreUnhandledErrors
- Config: dangerouslyIgnoreUnhandledErrors
발생하는 처리되지 않은 오류를 무시합니다.
sequence.shuffle.files
- CLI:
--sequence.shuffle.files
- Config: sequence.shuffle.files
파일을 무작위 순서로 실행합니다. 이 옵션을 활성화하면 오래 실행되는 테스트가 더 일찍 시작되지 않습니다 (기본값: false
).
sequence.shuffle.tests
- CLI:
--sequence.shuffle.tests
- Config: sequence.shuffle.tests
테스트를 무작위 순서로 실행합니다 (기본값: false
).
sequence.concurrent
- CLI:
--sequence.concurrent
- Config: sequence.concurrent
테스트를 병렬로 실행합니다 (기본값: false
).
sequence.seed
- CLI:
--sequence.seed <seed>
- Config: sequence.seed
무작위화 시드를 설정합니다. 이 옵션은 --sequence.shuffle
이 false
인 경우 효과가 없습니다. 자세한 내용은 "Random Seed" 페이지를 참조하십시오.
sequence.hooks
- CLI:
--sequence.hooks <order>
- Config: sequence.hooks
훅이 실행되는 순서를 변경합니다. 허용되는 값은 "stack", "list" 및 "parallel"입니다. 자세한 내용은 sequence.hooks
를 참조하십시오 (기본값: "parallel"
).
sequence.setupFiles
- CLI:
--sequence.setupFiles <order>
- Config: sequence.setupFiles
설정 파일이 실행되는 순서를 변경합니다. 허용되는 값은 "list" 및 "parallel"입니다. "list"로 설정하면 정의된 순서대로 설정 파일을 실행합니다. "parallel"로 설정하면 설정 파일을 병렬로 실행합니다 (기본값: "parallel"
).
inspect
- CLI:
--inspect [[host:]port]
- Config: inspect
Node.js 인스펙터를 활성화합니다 (기본값: 127.0.0.1:9229
).
inspectBrk
- CLI:
--inspectBrk [[host:]port]
- Config: inspectBrk
Node.js 인스펙터를 활성화하고 테스트 시작 전에 중단합니다.
testTimeout
- CLI:
--testTimeout <timeout>
- Config: testTimeout
테스트의 기본 시간 초과 (밀리초)입니다 (기본값: 5000
). 시간 초과를 완전히 비활성화하려면 0
을 사용하십시오.
hookTimeout
- CLI:
--hookTimeout <timeout>
- Config: hookTimeout
기본 훅 시간 초과 (밀리초)입니다 (기본값: 10000
). 시간 초과를 완전히 비활성화하려면 0
을 사용하십시오.
bail
- CLI:
--bail <number>
- Config: bail
주어진 수의 테스트가 실패하면 테스트 실행을 중지합니다 (기본값: 0
).
retry
- CLI:
--retry <times>
- Config: retry
테스트가 실패하면 지정된 횟수만큼 다시 시도합니다 (기본값: 0
).
diff.aAnnotation
- CLI:
--diff.aAnnotation <annotation>
- Config: diff.aAnnotation
예상 라인에 대한 주석입니다 (기본값: Expected
).
diff.aIndicator
- CLI:
--diff.aIndicator <indicator>
- Config: diff.aIndicator
예상 라인에 대한 지표입니다 (기본값: -
).
diff.bAnnotation
- CLI:
--diff.bAnnotation <annotation>
- Config: diff.bAnnotation
수신 라인에 대한 주석입니다 (기본값: Received
).
diff.bIndicator
- CLI:
--diff.bIndicator <indicator>
- Config: diff.bIndicator
수신 라인에 대한 지표입니다 (기본값: +
).
diff.commonIndicator
- CLI:
--diff.commonIndicator <indicator>
- Config: diff.commonIndicator
공통 라인에 대한 지표입니다 (기본값: ).
diff.contextLines
- CLI:
--diff.contextLines <lines>
- Config: diff.contextLines
각 변경 부분 주변에 표시할 문맥 라인 수입니다 (기본값: 5
).
diff.emptyFirstOrLastLinePlaceholder
- CLI:
--diff.emptyFirstOrLastLinePlaceholder <placeholder>
- Config: diff.emptyFirstOrLastLinePlaceholder
비어 있는 첫 번째 또는 마지막 라인에 대한 자리 표시자입니다 (기본값: ""
).
diff.expand
- CLI:
--diff.expand
- Config: diff.expand
모든 공통 라인을 확장합니다 (기본값: true
).
diff.includeChangeCounts
- CLI:
--diff.includeChangeCounts
- Config: diff.includeChangeCounts
diff 출력에 비교 횟수를 포함합니다 (기본값: false
).
diff.omitAnnotationLines
- CLI:
--diff.omitAnnotationLines
- Config: diff.omitAnnotationLines
출력에서 주석 라인을 생략합니다 (기본값: false
).
diff.printBasicPrototype
- CLI:
--diff.printBasicPrototype
- Config: diff.printBasicPrototype
기본 프로토타입 Object 및 Array를 인쇄합니다 (기본값: true
).
diff.maxDepth
- CLI:
--diff.maxDepth <maxDepth>
- Config: diff.maxDepth
중첩된 객체를 출력할 때 재귀 처리할 최대 깊이입니다 (기본값: 20
).
diff.truncateThreshold
- CLI:
--diff.truncateThreshold <threshold>
- Config: diff.truncateThreshold
각 변경 사항 전후에 표시할 라인 수입니다 (기본값: 0
).
diff.truncateAnnotation
- CLI:
--diff.truncateAnnotation <annotation>
- Config: diff.truncateAnnotation
잘린 라인에 대한 주석입니다 (기본값: ... Diff result is truncated
).
exclude
- CLI:
--exclude <glob>
- Config: exclude
테스트에서 제외할 추가 파일 glob 패턴입니다.
expandSnapshotDiff
- CLI:
--expandSnapshotDiff
- Config: expandSnapshotDiff
스냅샷 실패 시 전체 diff를 표시합니다.
disableConsoleIntercept
- CLI:
--disableConsoleIntercept
- Config: disableConsoleIntercept
콘솔 로깅의 자동 가로채기를 비활성화합니다 (기본값: false
).
typecheck.enabled
- CLI:
--typecheck.enabled
- Config: typecheck.enabled
테스트와 함께 타입 검사를 활성화합니다 (기본값: false
).
typecheck.only
- CLI:
--typecheck.only
- Config: typecheck.only
타입 검사 테스트만 실행합니다. 이 옵션은 자동으로 타입 검사를 활성화합니다 (기본값: false
).
typecheck.checker
- CLI:
--typecheck.checker <name>
- Config: typecheck.checker
사용할 타입 검사기를 지정합니다. 사용 가능한 값은 "tsc" 및 "vue-tsc"이며, 실행 파일 경로도 가능합니다 (기본값: "tsc"
).
typecheck.allowJs
- CLI:
--typecheck.allowJs
- Config: typecheck.allowJs
JavaScript 파일의 타입 검사를 허용합니다. 기본적으로 tsconfig.json에서 값을 가져옵니다.
typecheck.ignoreSourceErrors
- CLI:
--typecheck.ignoreSourceErrors
- Config: typecheck.ignoreSourceErrors
소스 파일의 타입 오류를 무시합니다.
typecheck.tsconfig
- CLI:
--typecheck.tsconfig <path>
- Config: typecheck.tsconfig
사용자 지정 tsconfig 파일 경로입니다.
typecheck.spawnTimeout
- CLI:
--typecheck.spawnTimeout <time>
- Config: typecheck.spawnTimeout
타입 검사기를 생성하는 데 걸리는 최소 시간 (밀리초)입니다.
project
- CLI:
--project <name>
- Config: project
Vitest 작업 공간 기능을 사용하는 경우 실행할 프로젝트 이름입니다. 여러 프로젝트에 대해 --project=1 --project=2
와 같이 반복하여 지정할 수 있습니다. --project=packages*
와 같은 와일드카드를 사용하여 프로젝트를 필터링하거나, --project=!pattern
으로 프로젝트를 제외할 수도 있습니다.
slowTestThreshold
- CLI:
--slowTestThreshold <threshold>
- Config: slowTestThreshold
테스트 또는 스위트가 느리다고 간주되는 임계값 (밀리초)입니다 (기본값: 300
).
teardownTimeout
- CLI:
--teardownTimeout <timeout>
- Config: teardownTimeout
teardown 함수의 기본 시간 초과 (밀리초)입니다 (기본값: 10000
).
maxConcurrency
- CLI:
--maxConcurrency <number>
- Config: maxConcurrency
스위트에서 동시 테스트의 최대 수입니다 (기본값: 5
).
expect.requireAssertions
- CLI:
--expect.requireAssertions
- Config: expect.requireAssertions
모든 테스트에 최소 하나의 단언이 필요하도록 요구합니다.
expect.poll.interval
- CLI:
--expect.poll.interval <interval>
- Config: expect.poll.interval
expect.poll()
단언에 대한 폴링 간격 (밀리초)입니다 (기본값: 50
).
expect.poll.timeout
- CLI:
--expect.poll.timeout <timeout>
- Config: expect.poll.timeout
expect.poll()
단언에 대한 폴링 시간 초과 (밀리초)입니다 (기본값: 1000
).
printConsoleTrace
- CLI:
--printConsoleTrace
- Config: printConsoleTrace
항상 콘솔 스택 추적을 인쇄합니다.
includeTaskLocation
- CLI:
--includeTaskLocation
- Config: includeTaskLocation
location
속성에 테스트 및 스위트 위치를 수집합니다.
attachmentsDir
- CLI:
--attachmentsDir <dir>
- Config: attachmentsDir
context.annotate
에서 첨부 파일이 저장되는 디렉터리입니다 (기본값: .vitest-attachments
).
run
- CLI:
--run
감시 모드를 비활성화합니다.
color
- CLI:
--no-color
콘솔 출력에서 색상을 제거합니다.
clearScreen
- CLI:
--clearScreen
감시 모드에서 테스트를 다시 실행할 때 터미널 화면을 지웁니다 (기본값: true
).
configLoader
- CLI:
--configLoader <loader>
esbuild로 구성을 번들링하려면 bundle
을 사용하고, 즉시 처리하려면 runner
(실험적)를 사용합니다. 이 옵션은 Vite 버전 6.1.0 이상에서만 사용할 수 있습니다. (기본값: bundle
)
standalone
- CLI:
--standalone
테스트를 실행하지 않고 Vitest를 시작합니다. 파일 필터는 무시되며, 테스트는 변경 시에만 실행됩니다 (기본값: false
).
changed
- 유형:
boolean | string
- 기본값: false
변경된 파일에 대해서만 테스트를 수행합니다. 값이 제공되지 않으면 커밋되지 않은 변경 사항(스테이지된 변경사항과 스테이지되지 않은 변경사항 포함)에 대해 테스트를 실행합니다.
마지막 커밋에서 변경된 사항에 대해 테스트를 실행하려면 --changed HEAD~1
을 사용할 수 있습니다. 커밋 해시(예: --changed 09a9920
) 또는 브랜치 이름(예: --changed origin/develop
)을 전달할 수도 있습니다.
코드 커버리지와 함께 사용될 경우, 보고서에는 변경 사항과 관련된 파일만 포함됩니다.
forceRerunTriggers
구성 옵션과 함께 사용될 경우, forceRerunTriggers
목록에 있는 파일 중 하나라도 변경되면 전체 테스트 스위트를 실행합니다. 기본적으로 Vitest 구성 파일 및 package.json
에 대한 변경 사항은 항상 전체 스위트를 다시 실행합니다.
shard
- 유형:
string
- 기본값: disabled
<index>
/<count>
형식으로 실행할 테스트 스위트 샤드입니다. 여기서
count
는 양의 정수이며, 분할할 총 부분 수입니다.index
는 양의 정수이며, 분할된 부분의 순번입니다.
이 명령은 모든 테스트를 count
개의 동일한 부분으로 나누고, index
부분에 해당하는 테스트만 실행합니다. 예를 들어, 테스트 스위트를 세 부분으로 나누려면 다음을 사용합니다:
vitest run --shard=1/3
vitest run --shard=2/3
vitest run --shard=3/3
WARNING
이 옵션은 --watch
가 활성화된 상태(개발 환경에서 기본적으로 활성화됨)에서는 사용할 수 없습니다.
TIP
--reporter=blob
이 출력 파일 없이 사용될 경우, 기본 경로는 다른 Vitest 프로세스와의 충돌을 피하기 위해 현재 샤드 구성을 포함합니다.
merge-reports
- 유형:
boolean | string
지정된 폴더(기본적으로 .vitest-reports
)에 있는 모든 blob 리포트를 통합합니다. 이 명령으로 모든 리포터( blob
제외)를 사용할 수 있습니다:
vitest --merge-reports --reporter=junit