run([options])


  • options <Object> 运行测试的配置选项。支持以下属性:
    • concurrency <number> | <boolean> 如果提供了一个数字,那么将会有那么多的测试进程并行运行,每个进程对应一个测试文件。如果是 true,则会并行运行 os.availableParallelism() - 1 个测试文件。如果是 false,则一次只运行一个测试文件。默认值: false
    • files<Array> 包含要运行文件列表的数组。 默认 匹配 测试运行器执行模型 的文件。
    • inspectPort <number> | <Function> 设置测试子进程的检查端口。可以是一个数字,也可以是一个不带参数并返回数字的函数。如果提供了空值,每个进程将获得自己的端口,从主进程的 process.debugPort 开始递增。默认值: undefined
    • only<boolean> 如果为真,测试上下文将只运行设置了 only 选项的测试
    • setup <Function> 一个接受 TestsStream 实例的函数,可用于在运行任何测试之前设置监听器。默认值: undefined
    • signal <AbortSignal> 允许中止正在进行的测试执行。
    • testNamePatterns <string> | <RegExp> | <Array> 一个字符串、正则表达式或正则表达式数组,可用于仅运行名称与提供的模式匹配的测试。测试名称模式会被解释为 JavaScript 正则表达式。对于执行的每个测试,相应的测试钩子,例如 beforeEach(),也会被运行。默认值: undefined
    • timeout <number> 测试执行将在指定的毫秒数后失败。如果未指定,子测试将继承其父测试的该值。默认值: Infinity
    • watch <boolean> 是否以监视模式运行。默认值: false
    • shard <Object> 在特定分片中运行测试。默认值: undefined
      • index <number> 是一个介于 1 和 <total> 之间的正整数,用于指定要运行的分片索引。此选项是 必需的
      • total <number> 是一个正整数,指定将测试文件拆分成的碎片总数。此选项为_必填_。
  • 返回:<TestsStream>
import { tap } from 'node:test/reporters';
import process from 'node:process';

run({ files: [path.resolve('./tests/test.js')] })
  .compose(tap)
  .pipe(process.stdout);const { tap } = require('node:test/reporters');

run({ files: [path.resolve('./tests/test.js')] })
  .compose(tap)
  .pipe(process.stdout);