deno test
命令行用法
deno test [OPTIONS] [files]... [-- [SCRIPT_ARG]...]
使用 Deno 内置的测试运行器运行测试。
评估给定模块,运行所有用 Deno.test()
声明的测试,并将结果报告到标准输出。
deno test src/fetch_test.ts src/signal_test.ts
目录参数将展开为所有包含的匹配 glob 模式 {*_,*.,}test.{js,mjs,ts,mts,jsx,tsx}
或 **/__tests__/**
的文件。
deno test src/
类型检查选项 跳转到标题
--check
跳转到标题
设置类型检查行为。此子命令默认对本地模块进行类型检查,因此添加 --check
是多余的。如果提供值“all”,则会包含远程模块。另外,也可以使用 'deno check' 子命令。
--no-check
跳转到标题
跳过类型检查。如果提供值“remote”,则会忽略来自远程模块的诊断错误。
依赖管理选项 跳转到标题
--cached-only
跳转到标题
要求远程依赖项已缓存。
--frozen
跳转到标题
如果锁定文件过期,则报错。
--import-map
跳转到标题
从本地文件或远程 URL 加载导入映射文件。
--lock
跳转到标题
检查指定的锁文件。(如果未提供值,则默认为 “./deno.lock”)。
--no-lock
跳转到标题
禁用锁定文件的自动发现。
--no-npm
跳转到标题
不解析 npm 模块。
--no-remote
跳转到标题
不解析远程模块。
--node-modules-dir
跳转到标题
设置 npm 包的 node 模块管理模式。
--reload
跳转到标题
短标记:-r
重新加载源代码缓存(重新编译 TypeScript)。不带值时重新加载所有内容。jsr:@std/http/file-server,jsr:@std/assert/assert-equals
重新加载特定模块。npm:
重新加载所有 npm 模块。npm:chalk
重新加载特定 npm 模块。
--vendor
跳转到标题
切换远程模块的本地 vendor 文件夹使用和 npm 包的 node_modules 文件夹使用。
选项 跳转到标题
--allow-scripts
跳转到标题
允许为给定包运行 npm 生命周期脚本。注意:脚本仅在使用 node_modules 目录 (--node-modules-dir
) 时执行。
--cert
跳转到标题
从 PEM 编码文件中加载证书颁发机构。
--conditions
跳转到标题
使用此参数为 npm 包导出指定自定义条件。您也可以使用 DENO_CONDITIONS 环境变量。
--config
跳转到标题
短标记:-c
配置 Deno 的不同方面,包括 TypeScript、代码检查和代码格式化。通常配置文件名为 deno.json
或 deno.jsonc
,并且会自动检测;在这种情况下,不需要此标志。
--env-file
跳转到标题
从本地文件加载环境变量。只使用给定键的第一个环境变量。现有的进程环境变量不会被覆盖,因此如果环境中已存在同名变量,其值将保留。如果您的 .env 文件中存在同一环境变量的多个声明,则应用第一个遇到的声明。这取决于您作为参数传递的文件的顺序。
--ext
跳转到标题
设置所提供文件的内容类型。
--hide-stacktraces
跳转到标题
在失败的测试结果中隐藏堆栈跟踪。
--ignore
跳转到标题
忽略文件。
--location
跳转到标题
某些 Web API 使用的 `globalThis.location` 值。
--no-config
跳转到标题
禁用自动加载配置文件。
--parallel
跳转到标题
并行运行测试模块。并行度默认为可用 CPU 数量或 DENO_JOBS 环境变量的值。
--preload
跳转到标题
在主模块之前执行的文件列表。
--seed
跳转到标题
设置随机数生成器种子。
--v8-flags
跳转到标题
要查看所有可用标志的列表,请使用 --v8-flags=--help
。标志也可以通过 DENO_V8_FLAGS 环境变量设置。使用此标志设置的任何标志都将附加在 DENO_V8_FLAGS 环境变量之后。
调试选项 跳转到标题
--inspect
跳转到标题
在 `host:port` 上激活检查器 [默认: `127.0.0.1:9229`]
--inspect-brk
跳转到标题
在 host:port 上激活检查器,等待调试器连接并在用户脚本开始时中断。
--inspect-wait
跳转到标题
在 host:port 上激活检查器,并在运行用户代码之前等待调试器连接。
测试选项 跳转到标题
--clean
跳转到标题
在运行测试之前清空临时覆盖率配置文件数据目录。注意:为同一覆盖率目录串行或并行运行多个 deno test --clean
调用可能会导致竞态条件。
--coverage
跳转到标题
将覆盖率配置文件数据收集到 DIR 中。如果未指定 DIR,则使用 'coverage/'。此选项也可以通过 DENO_COVERAGE_DIR 环境变量设置。
--coverage-raw-data-only
跳转到标题
仅收集原始覆盖率数据,不生成报告。
--doc
跳转到标题
评估 JSDoc 和 Markdown 中的代码块。
--fail-fast
跳转到标题
在 N 个错误后停止。默认为在第一次失败后停止。
--filter
跳转到标题
运行测试,其中测试名称包含此字符串或正则表达式模式。
--junit-path
跳转到标题
将 JUnit XML 测试报告写入 PATH。使用 '-' 写入标准输出,这是未提供 PATH 时的默认值。
--no-run
跳转到标题
缓存测试模块,但不运行测试。
--permit-no-files
跳转到标题
如果未找到文件,则不返回错误代码。
--reporter
跳转到标题
选择要使用的报告器。默认为 'pretty'。
--shuffle
跳转到标题
打乱测试运行的顺序。
--trace-leaks
跳转到标题
启用泄露跟踪。在测试中调试泄露 ops 时很有用,但会影响测试执行时间。
文件监听选项 跳转到标题
--no-clear-screen
跳转到标题
在监视模式下不清除终端屏幕。
--watch
跳转到标题
监听文件更改并自动重启进程。默认情况下,会监听入口点模块图中的本地文件。可以通过将额外路径作为参数传递给此标志来监听。
--watch-exclude
跳转到标题
从监视模式中排除提供的文件/模式。
附加信息 跳转到标题
它可以在监听模式 (--watch
) 下执行,支持并行执行 (--parallel
),并且可以配置为以随机顺序运行测试 (--shuffle
)。此外,还内置了对代码覆盖率 (--coverage
) 和泄露检测 (--trace-leaks
) 的支持。
示例 跳转到标题
运行测试
deno test
在特定文件中运行测试
deno test src/fetch_test.ts src/signal_test.ts
运行匹配 glob 的测试
deno test src/*.test.ts
运行测试并跳过类型检查
deno test --no-check
运行测试,并在文件更改时重新运行
deno test --watch