Skip to Content

@canyonjs/cli

Source

Canyon CLI 是一个用于将覆盖率数据上传到 Canyon 服务器的命令行工具。它从本地 .canyon_output 目录读取并聚合覆盖率数据,然后将其上传到配置的 Canyon 服务器。

安装

通过 npm 安装:

npm install -g @canyonjs/cli

或者从 GitHub Release  下载最新版本。

特性

  • 从本地 .canyon_output 目录读取并聚合覆盖率数据
  • 支持按路径过滤覆盖率文件
  • 支持基于场景的覆盖率报告
  • 自动检测 CI 环境变量(GitLab CI)
  • 将多个覆盖率文件合并为单个报告

使用方法

基本用法

canyon upload --dsn=http://your-canyon-server/api/coverage/client

使用 --scene 添加场景元数据以过滤覆盖率数据:

canyon upload --dsn=$DSN \ --scene='{"source":"automation","type":"e2e","env":"test"}'

命令选项

选项描述是否必填默认值
--dsnCanyon 服务器端点 URLNone
--repo_id仓库 ID否*CI_PROJECT_ID
--shaGit 提交 SHA否*CI_COMMIT_SHA
--provider源代码提供商 (gitlab/github)gitlab
--build_target构建目标标识符空字符串
--instrument_cwd插桩工作目录process.cwd()
--filter按路径子串过滤覆盖率文件None
--sceneJSON 格式的场景元数据None
--debug启用调试模式false

* 如果未提供,将从 CI 环境变量自动检测

示例:GitLab CI 集成

coverage: stage: test script: - npm test - canyon upload --dsn=$CANYON_DSN --scene='{"type":"unit","env":"ci"}' artifacts: paths: - .canyon_output/ expire_in: 1 week