Jest CLI 选项
jest
命令行运行有很多好用的选项。 你可以运行jest --help
命令查看所有可用的选项。 下面所示选项都可一起使用,以你想要的方式来运行测试。 Jest 的 配置选项 里每一条都可以通过命令行来指定。
下面是简要概述:
在命令行中使用
默认运行所有测试
jest
仅运行指定文件名称或文件路径的测试
# 指定测试文件的名称
jest my-test
# 指定测试文件的路径
jest path/to/my-test.js
仅运行在 hg/git 上有改动但尚未提交的文件
jest -o
仅运行与 path/to/fileA.js
和 path/to/fileB.js
相关的测试
jest --findRelatedTests path/to/fileA.js path/to/fileB.js
仅运行匹配特定名称的测试用例(主要是匹配 describe 或 test 的名称)
jest -t name-of-spec
运行监视模式
jest --watch # 默认执行 jest -o 监视有改动的测试
jest --watchAll # 监视所有测试
该模式下可以指定名称或路径来监视 特定的测试文件
通过包管理器使用Jest
如果你通过包管理器运行Jest,你仍然可以传递命令行参数作为Jest参数。
除了下面这种使用方式
jest -u -t="ColorPicker"
现在你还可以使用
- npm
- Yarn
- pnpm
npm test -- -u -t="ColorPicker"
yarn test -u -t="ColorPicker"
pnpm test -u -t="ColorPicker"
驼峰命名与横线分割命名支持
Jest同时支持驼峰命名与横线分割命名。 下面两个例子的效果是一样的:
jest --collect-coverage
jest --collectCoverage
两种命名的参数也可以混用:
jest --update-snapshot --detectOpenHandles
选项
备注
使用命令行传入的参数优先级高于使用 配置 指定的参数。
- 驼峰命名与横线分割命名支持
- 选项
- 参考
jest <regexForTestFiles>
--bail[=<n>]
--cache
--changedFilesWithAncestor
--changedSince
--ci
--clearCache
--clearMocks
--collectCoverageFrom=<glob>
--colors
--config=<path>
--coverage[=<boolean>]
--coverageDirectory=<path>
--coverageProvider=<provider>
--debug
--detectOpenHandles
--env=<environment>
--errorOnDeprecated
--expand
--filter=<file>
--findRelatedTests <spaceSeparatedListOfSourceFiles>
--forceExit
--help
--ignoreProjects <project1> ... <projectN>
--init
--injectGlobals
--json
--lastCommit
--listTests
--logHeapUsage
--maxConcurrency=<num>
--maxWorkers=<num>|<string>
--noStackTrace
--notify
--onlyChanged
--outputFile=<filename>
--passWithNoTests
--projects <path1> ... <pathN>
--reporters
--resetMocks
--restoreMocks
--roots
--runInBand
--runTestsByPath
--seed=<num>
--selectProjects <project1> ... <projectN>
--setupFilesAfterEnv <path1> ... <pathN>
--shard
--showConfig
--showSeed
--silent
--testEnvironmentOptions=<json string>
--testLocationInResults
--testMatch glob1 ... globN
--testNamePattern=<regex>
--testPathIgnorePatterns=<regex>|[array]
--testPathPattern=<regex>
--testRunner=<path>
--testSequencer=<path>
--testTimeout=<number>
--updateSnapshot
--useStderr
--verbose
--version
--watch
--watchAll
--watchman