# @as-pect/cli 中文文档

规范地址：https://npmcn.com/package/%40as-pect/cli/

版本：9\.0\.0
npm 元数据更新时间：2026-06-17T23:17:03.996Z
中文译文更新时间：2026-11-06T21:59:04.249Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40as-pect/cli
原文对照：https://npmcn.com/package/%40as-pect/cli/?lang=original
项目主页：https://github.com/jtenner/as-pect#readme
源码仓库：https://github.com/jtenner/as-pect#master

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：147 kB，90 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：8 个
- peer 依赖：assemblyscript ^0\.28\.19
- 首次发布：2019-07-15T03:41:37.498Z
- 最新版本发布：2026-06-17T23:17:03.873Z
- 近 30 天下载量：13128（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：61（近 12 个月 1 个）

## 中文简介

在快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快

## 安装

```sh
npm install @as-pect/cli
```

也可以使用：`pnpm add @as-pect/cli`、`yarn add @as-pect/cli`、`bun add @as-pect/cli`

## README

# jtenner/as-pect - @ as-pect/cli (英语)

[![Test](https://github.com/jtenner/as-pect/actions/workflows/test.yml/badge.svg)](https://github.com/jtenner/as-pect/actions/workflows/test.yml) [![Coverage Status](https://coveralls.io/repos/github/jtenner/as-pect/badge.svg?branch=master)](https://coveralls.io/github/jtenner/as-pect?branch=master) [![Changesets](https://img.shields.io/badge/maintained%20with-changesets-176de3.svg)](https://github.com/changesets/changesets)

将您的模块写入 AssemblyScript 并进行快速的靴子测试 以 Web Assembly 速度执行 !

## 文档

要查看文件,它的位置是 [这里](https://tenner-joshua.gitbook.io/as-pect/) 在图书上。 如果医生有任何问题,请随意提出问题!

## 测试会话词汇

CLI 驱动每个测试会话从配置到报告输出. `as-pect.config.js` 定义测试会话条目计划, JavaScript- side Wasm 主机导入通过 `instantiate(...)`记者,WASI的选项, 覆盖光,和输出行为. `as-pect.asconfig.json` 保留用于为每个计划条目制作编译器输出的AssemblyScript编译器配置.

快照文件路径和写入模式是测试会话快照计划的一部分. 截图通过/失败和更新决定来自Snapshot的生命周期 `@as-pect/snapshots` 在 CLI 撰写文件之前 .

## CLI 过滤器

使用 `asp --test <regex>` 或者说 `asp -t <regex>` 运行名称与正则表达式相匹配的测试。 使用 `asp --group <regex>` 或者说 `asp -g <regex>` 以运行名称与正则表达式相匹配的组。 这些选项作为过滤模式消耗以下参数;所剩位置参数仍作为测试会话条目 globs处理.

## 记者输出格式

使用 `asp --junit` 将 JUnit XML 文件写入测试输入 JUnit 类单元测试报告的 CI 系统的条目。 您也可以明确安装/选择软件包 `asp --reporter @as-pect/junit-reporter`。记者地图 套接字报告事实 `testsuite`, (中文(简体) ), `testcase`, (中文(简体) ), `failure`, (中文(简体) ), `error`, (中文(简体) ), `skipped`,以及 `system-out` 要素.

使用 `asp --ctrf` 用于测试吞入通用测试报告格式的工具条目的 CTRF JSON 文件。 您也可以明确安装/选择软件包 `asp --reporter @as-pect/ctrf-reporter`. CTRF 产出用途 `.ctrf.json` 文档,包括 `reportFormat`, (中文(简体) ), `specVersion`, (中文(简体) ), `results.tool`, (中文(简体) ), `results.summary`,以及 `results.tests`,并且只将事实嵌入 `extra.asPect`。 。 。 .

使用 `asp --json` 用于当前 pECT 遗留的 JSON v1 数组格式。 它仍然与CTRF分开,因此现有的JSON消费者保留他们目前的合同. 见 [`../json-reporter/readme.md`](https://npmcn.com/package/%40as-pect/json-reporter/readme.md#as-pect-legacy-json-v1-contract) 为全场形状.

`@as-pect/csv-reporter` 为电子表格式工作流程编写 CSV v1 表格导出。 它保留了列顺序 `Group`, (中文(简体) ), `Name`, (中文(简体) ), `Ran`, (中文(简体) ), `Negated`, (中文(简体) ), `Pass`, (中文(简体) ), `Runtime`, (中文(简体) ), `Message`, (中文(简体) ), `Actual`, (中文(简体) ), `Expected` 并且不声称CSV是跨工具测试结果标准. 见 [`../csv-reporter/readme.md`](https://npmcn.com/package/%40as-pect/csv-reporter/readme.md#as-pect-csv-v1-contract) 全栏和价值合同.

## 代码覆盖

`as-pect` 用途 [`as-covers`](https://www.npmjs.com/package/@as-covers/core) 用于AssemblyScript行和分支覆盖. 这个 `asp --init` 模板已经创建 `as-pect.asconfig.json` 有两个编译器目标:

-   `noCoverage`,只运行 `@as-pect/transform` 变身.
-   `coverage`中添加 `@as-covers/assembly` 支持库和 `@as-covers/transform` 转换前 `@as-pect/transform`。 。 。 .

通过解析或添加 `coverage` 缩略语列表 `as-pect.config.js`数字 :

```js
export default {
  // ...the rest of your as-pect config
  coverage: ["assembly/**/*.ts"],
};
```

何时 `coverage` 非空无一物, `asp` 使用 `coverage` 目标,安装 `as-covers` 输入时,将每个测试模块登记为 `as-covers`,并在运行后打印覆盖报告.

如果你保持习惯 `as-pect.asconfig.json`,确保它包含来自init模板的覆盖目标形状:

```json
{
  "targets": {
    "coverage": {
      "lib": ["./node_modules/@as-covers/assembly/index.ts"],
      "transform": ["@as-covers/transform", "@as-pect/transform"]
    },
    "noCoverage": {
      "transform": ["@as-pect/transform"]
    }
  }
}
```

## AssemblyScript 编译器选项

`as-pect.config.js` 配置测试会话条目计划、 Wasm 主机导入、记者、 WASI、 覆盖和输出行为。 这不是一个 `asc` 编译器配置文件 .

设置 AssemblyScript 编译器选项,包括 `asc --lib` 选项,在 `as-pect.asconfig.json`。 。 。 . `asp` 引用带有该文件的编译器并选择其中之一 `noCoverage` 目标或目标 `coverage` 因此,在所运行的目标上必须存在针对特定目标的选项.

例如,在这样的测试中添加自定义库组件 :

```json
{
  "targets": {
    "coverage": {
      "lib": ["./assembly/test-lib", "./node_modules/@as-covers/assembly/index.ts"],
      "transform": ["@as-covers/transform", "@as-pect/transform"]
    },
    "noCoverage": {
      "lib": ["./assembly/test-lib"],
      "transform": ["@as-pect/transform"]
    }
  },
  "options": {
    "exportMemory": true,
    "outFile": "output.wasm",
    "textFile": "output.wat",
    "bindings": "raw",
    "exportStart": "_start",
    "exportRuntime": true,
    "use": ["RTRACE=1"],
    "debug": true,
    "exportTable": true
  },
  "extends": "./asconfig.json",
  "entries": ["./node_modules/@as-pect/assembly/assembly/index.ts"]
}
```

继续使用 `as-pect.config.js` 用于 JavaScript- side WebAssembly 导入 `instantiate(...)`启用 `as-pect.asconfig.json` 为 AssemblyScript 侧编译时间输入,例如 `lib`, (中文(简体) ), `path`, (中文(简体) ), `transform`,以及 `use`。 。 。 .

## 贡献者

请看 [捐款额](https://npmcn.com/package/%40as-pect/cli/CONTRIBUTING.md)。 。 。 .

感谢 [@ willemneal (英语)](https://github.com/willemneal) 财务报告和审定财务报表 [@ 麦克斯格雷](https://github.com/maxgraey) 给予他们一切支持 `as-pect` 页:1 最好的软件.

其他贡献者:

-   [@trusktr (英语)](https://github.com/trusktr) - 文档更改
-   [@ 麦克斯格雷](https://github.com/maxgraey) - API绩效建议
-   [@torch2424 (英语)](https://github.com/torch2424) - 文档更改
-   [@dcodeio (英语)](https://github.com/torch2424) - 自己编的大会文稿!
-   [@ 9oelM (英语)](https://github.com/9oelM) - 杂项功能

## 特别 谢谢

特别感谢 [大会脚本](https://github.com/AssemblyScript/assemblyscript) 团队创建 AssemblyScript 本身.

## 常见问题

### @as-pect/cli 是什么？

在快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快快

### 如何安装 @as-pect/cli？

在项目目录运行 npm install @as-pect/cli，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：assemblyscript（^0\.28\.19）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。它还提供命令行工具 asp、aspect，可以用 npx asp 直接运行。

### @as-pect/cli 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @as-pect/cli 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @as-pect/cli 可以商用吗？

@as-pect/cli 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @as-pect/cli 的下载量有多少？

根据 npm 官方下载统计，@as-pect/cli 在 2026/10/07 – 2026/11/05 这 30 天内被下载 13,128 次，日均约 438 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @as-pect/cli 还在维护吗？

最新版本 9\.0\.0 发布于 2026/06/18（4 个月前）；至今共发布 61 个版本，其中过去 12 个月发布了 1 个；首次发布于 2019/07/15。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

