@abapify/adt-atc

中文文档
0.4.34发布于 2026/11/03MITTypeScriptES Module构建来源已验证近 30 天下载 3399

ABAP 测试套接字( ATC) CLI 插件用于 adt- cli

中文使用文档
文档目录12 节
  1. 安装
  2. 使用量
  3. 作为 CLI 插件
  4. 选项
  5. 程序用途
  6. 检查类别
  7. 输出格式
  8. 控制台( 默认)
  9. 贾森
  10. 沙特阿拉伯
  11. GitLab 代码质量
  12. 许可证

@abapify/adt-atc (中文(简体) )

version

ABAP 测试锁舱( ATC) CLI 插件 @abapify/adt-cli。 。 。 .

安装

npm install @abapify/adt-atc

使用量

作为 CLI 插件

添加到您的 adt.config.ts数字 :

export default {
  commands: ['@abapify/adt-atc/commands/atc'],
};

然后使用命令 :

# Run ATC on a transport
adt atc -t TRLK942970

# Run ATC on a package
adt atc -p ZMY_PACKAGE

# Run ATC on a specific object
adt atc -o /sap/bc/adt/oo/classes/zcl_my_class

# Output as SARIF (for GitHub Code Scanning)
adt atc -t TRLK942970 --format sarif --output atc-results.sarif

# Output as GitLab Code Quality
adt atc -t TRLK942970 --format gitlab --output gl-code-quality.json

选项

选项说明
-p, --package <package>在软件包上运行 ATC
-o, --object <uri>在特定对象上运行 ATC
-t, --transport <transport>根据运输请求运行 ATC
--variant <variant>ATC 检查变体( 默认: 从系统自定义)
--max-results <number>最大结果数( 默认: 100)
--format <format>输出格式:控制台、json、gitlab、sarif
--output <file>输出文件( gitlab/ sarif 格式需要)
--resolver <name>解析报告路径( 内置 : abapgit(中文(简体) )

程序用途

import {
  atcCommand,
  outputSarifReport,
  outputGitLabCodeQuality,
} from '@abapify/adt-atc';
import type { AtcResult, AtcFinding } from '@abapify/adt-atc';

// Use the formatters directly
const result: AtcResult = {
  checkVariant: 'DEFAULT',
  totalFindings: 1,
  errorCount: 0,
  warningCount: 1,
  infoCount: 0,
  findings: [
    {
      checkId: 'CL_CI_TEST_SELECT',
      checkTitle: 'Analysis of WHERE Condition for SELECT',
      messageId: '001',
      priority: 2,
      messageText: 'Table SFLIGHT: No WHERE condition',
      objectUri: '/sap/bc/adt/oo/classes/zcl_my_class',
      objectType: 'CLAS',
      objectName: 'ZCL_MY_CLASS',
      location: '/sap/bc/adt/oo/classes/zcl_my_class/source/main#start=10,0',
      // Optional: resolved by the atc command from the run's check variant
      // form template (check categories are best-effort enrichment)
      checkCategory: 'CI_PERFORMANCE',
    },
  ],
};

await outputSarifReport(result, 'atc-results.sarif');
await outputGitLabCodeQuality(result, 'gl-code-quality.json');

检查类别

每一个发现可以携带一个 checkCategory (例如, CI_PERFORMANCE, (中文(简体) ), CI_SECURITY: ATC 检查类别的名称 : 改为: 这个 atc 命令从运行的检查中自动解决 变体形式模板( e)GET /sap/bc/adt/atc/checkvariants/formtemplate(中文(简体) ) 解决每个结果的文档页到其执行类 (工作清单) checkId 是一个 GUID,然后将该类映射到一个类别. 这个 enrichResultWithCategories 帮助者只做直接 checkId 查询; 命令使用文档桥进行正常的工作列表结果. 这是最佳效果: 缺少模板、 无法读取的页面或未编目 检查让分类未设置而不失败运行 。 类别是: 从变体的目录中解析出 运行后获取,所以 反映当时有效的变式配置(包括任何 编辑在同时完成).

浓缩辅助剂出口再利用:

import {
  parseCheckCategoryIndex,
  fetchCheckCategoryIndex,
  enrichResultWithCategories,
} from '@abapify/adt-atc';

// Build the implementing class -> category name index from a parsed form template
const index = parseCheckCategoryIndex(formTemplateDocument);

// Or fetch it through an ADT client (never throws)
const fetched = await fetchCheckCategoryIndex(client, 'DEFAULT');

// Enrich a result in place (direct lookup: only resolves findings whose
// checkId is already the implementing class name; normal worklist findings
// are enriched by the command via the documentation bridge)
enrichResultWithCategories(result, index);

GitLab 编码中物质质量的分类为 check_category 每个发现; SARIF 用于标出每个规则的内容 properties.category。 。 。 .

输出格式

控制台( 默认)

带有emoji指标和可点击的ADT链接(支持的终端)的可人读输出.

贾森

ATC结果的Raw JSON输出供进一步处理.

沙特阿拉伯

沙特阿拉伯 gitHub 代码扫描集成格式.

GitLab 代码质量

GitLab 代码质量 gitLab CI/CD 集成格式.

AbapGit 存储器,添加 --resolver abapgit。解析器使用 将函数模块等复合对象映射到全ATC位置 URI ,然后扫描配置的源树,这样既可以 PRIFIX和FUL文件夹逻辑指向实际的Git路径. 当多个 文件共享同一个基名( 如多个) package.devc.xml 文件在 不同软件包目录,解析器拒绝模糊的匹配 而不是猜测.

许可证

麻省理工学院

版本与发布记录

@abapify/adt-atc 共发布 31 个版本,首次发布于 2026/04/21;过去 12 个月发布了 31 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.4.34latest2026/11/034 天前
0.4.332026/11/025 天前
0.4.322026/11/025 天前
0.4.312026/11/016 天前
0.4.292026/10/308 天前
0.4.282026/10/308 天前

关于 @abapify/adt-atc 的常见问题

@abapify/adt-atc 是什么?

ABAP 测试套接字( ATC) CLI 插件用于 adt- cli

如何安装 @abapify/adt-atc?

在项目目录运行 npm install @abapify/adt-atc,或使用 pnpm add / yarn add / bun add。

@abapify/adt-atc 支持 TypeScript 吗?

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

@abapify/adt-atc 支持 ESM 还是 CommonJS?

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

@abapify/adt-atc 可以商用吗?

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

@abapify/adt-atc 的下载量有多少?

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

@abapify/adt-atc 还在维护吗?

最新版本 0.4.34 发布于 2026/11/03(4 天前);至今共发布 31 个版本,其中过去 12 个月发布了 31 个;首次发布于 2026/04/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。