SuperAPI AI 工具集

configuring-test-provider

部署与运维

查看项目

更新于 10-15 15:42

技能介绍

用途

本技能用于在 DevOps Center 流水线上配置一个可用的测试提供程序(例如 Apex Unit Tests、Code Analyzer、Flow Tests、Provar),通过 Connect API 完成配置,使其测试套件可被分配到流水线阶段。

主要能力

  • 获取流水线当前所有测试提供程序,解析出 testProviderId,并确认哪些提供程序仍处于 Available(未配置)状态。
  • 按状态分组展示提供程序摘要(已配置 / 可用)。
  • 在用户明确确认后,调用配置端点将指定提供程序配置到流水线上。
  • 对已配置的提供程序不重复配置,避免产生重复的 DevopsPipelineTestProvider 记录,并根据用户实际目标重定向到相应技能。
  • 将 API 错误状态码映射为通俗语言提示,不暴露原始错误信息、堆栈或 JSON 负载。

使用方式

前置条件:需先加载 checking-devops-prerequisites 技能,完成前置条件 1–4(组织登录、Agentforce DX 插件、DevOps Center 组织认证、识别流水线)。前置条件 5(阶段)不需要,因为提供程序是在流水线级别配置,而非阶段级别。

所需变量:

  • doce-org-alias:在前置条件 1 中建立。
  • pipelineId:在前置条件 4(流水线选择)中识别。
  • testProviderId:通过获取流水线的测试提供程序解析得到。

步骤 1 — 获取测试提供程序以解析提供程序 ID:

sf api request rest \
  "/services/data/v67.0/connect/devopstesting/pipeline/<pipelineId>/testProviders?status=all" \
  --target-org <doce-org-alias>

每个提供程序条目包含 testProviderId、testProviderName 和状态(Configured 与 Available)。按状态分组展示简短摘要。只有 Available 的提供程序才能被配置。如果流水线没有可用的提供程序,应报告并停止,不得编造提供程序或 ID。

如果指定的提供程序已配置:不要展示确认环节,也不要向配置端点发送 POST(步骤 2–3),否则会创建重复的 DevopsPipelineTestProvider。应直接说明该提供程序已配置,包括其已同步的套件数量和最近同步时间(如返回)。然后诊断用户的实际目标并按名称重定向:若用户表示在向阶段分配测试时看不到该提供程序的套件,这是阶段分配缺口而非提供程序配置缺口,应重定向到 managing-suite-assignments;若用户期望的是尚未同步的新建套件,应重定向到 syncing-test-providers(通过 POST /connect/devops/sync 重新同步)。不要回到配置流程,解释和重定向后干净结束。

步骤 2 — 确认环节(必需,用户确认前不得调用 API):

“我将在 <pipelineName> 流水线上配置 <testProviderName>。这将使其套件可被分配到阶段。确认?”

在用户给出肯定答复前不得继续。

步骤 3 — 配置提供程序:确认后,使用提供程序 ID 调用配置端点:

sf api request rest \
  "/services/data/v67.0/connect/devops/pipeline/<pipelineId>/testProvider" \
  --method POST \
  --body '{"testProviderId": "<testProviderId>"}' \
  --target-org <doce-org-alias>

成功后提示:“提供程序 <testProviderName> 现已在 <pipelineName> 流水线上配置完成。其套件可被分配到阶段。”新配置的套件随后可用 managing-suite-assignments 分配到阶段。

关键注意事项

POST .../pipeline/<pipelineId>/testProvider 端点会创建新的提供程序配置记录(DevopsPipelineTestProvider)。仅在首次配置提供程序时使用它。若要为已配置的提供程序重新同步新套件,应使用 syncing-test-providers(POST /connect/devops/sync)——对已配置的提供程序调用此配置端点会产生重复的 DevopsPipelineTestProvider 记录。

错误处理

绝不向用户暴露原始 API 错误消息、堆栈跟踪或 JSON 负载。将响应状态码映射为通俗语言消息:

  • 400:“请求无效。请检查提供程序 ID 和流水线 ID 是否正确。”
  • 403:“您没有在此流水线上配置测试提供程序的权限。”
  • 404:“未找到流水线或测试提供程序。”
  • 409:“该提供程序似乎已在此流水线上配置。若要获取新套件,请改为重新同步。”
  • 500:“发生服务器错误。请几分钟后重试。”

相关技能

  • checking-devops-prerequisites — 首先加载以建立组织和流水线上下文。
  • syncing-test-providers — 提供程序配置完成后,用于日后重新同步并拉取新增套件。
  • managing-suite-assignments — 配置提供程序后,用于将其套件分配或映射到流水线阶段。
  • recommending-devops-tests — 用于推荐新可用套件中应运行哪些。

适用场景

适用于需要在 DevOps Center 流水线上首次启用某个测试提供程序,使其测试套件可被分配到流水线阶段的场景。

限制

  • 仅能配置状态为 Available 的提供程序;无可用提供程序时应停止,不得编造。
  • 配置前必须获得用户明确确认。
  • 对已配置的提供程序不得重复调用配置端点,否则会产生重复记录。
  • 需先完成前置条件 1–4。
  • 关于收费、价格、平台支持范围等具体信息,资料中暂未提供。