deno.com

文档测试

Deno 支持对您的文档示例进行类型检查和评估。

这确保了您文档中的示例是最新的并且可以正常工作。

基本思想是:

/**
 * # Examples
 *
 * ```ts
 * const x = 42;
 * ```
 */

三个反引号标记代码块的开始和结束,语言由语言标识符属性决定,可以是以下任何一种:

  • js
  • javascript
  • mjs
  • cjs
  • jsx
  • ts
  • typescript
  • mts
  • cts
  • tsx

如果未指定语言标识符,则语言将从提取代码块的源文档的媒体类型中推断。

另一个支持的属性是 ignore,它告诉测试运行器跳过对代码块的类型检查。

/**
 * # Does not pass type check
 *
 * ```typescript ignore
 * const x: string = 42;
 * ```
 */

如果此示例位于名为 foo.ts 的文件中,运行 deno test --doc foo.ts 将提取此示例,然后对其进行类型检查并将其作为独立模块进行评估,该模块与被文档化的模块位于同一目录中。

要文档化您的导出,请使用相对路径说明符导入模块

/**
 * # Examples
 *
 * ```ts
 * import { foo } from "./foo.ts";
 * ```
 */
export function foo(): string {
  return "foo";
}

有关 Deno 中测试的更多指南,请查看

您找到所需内容了吗?

隐私政策