关于 polling-test-results
用于跟踪 DevOps Center 异步测试执行状态,直到完成、超时或失败。它按测试类型调整轮询间隔和等待上限,并将完成结果交给故障分析技能。
主要功能
- 01按运行 ID 轮询执行状态
- 02按测试类型调整轮询
- 03处理完成、失败和超时
- 04传递结果以进行故障分析
适用场景
- 01监控新启动的测试运行
- 02检查长时间运行的测试是否完成
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ forcedotcom/ sf-skills --skill polling-test-results安装后在 Claude Code 中输入/polling-test-results确认已加载。
详细介绍
polling-test-results
需要确认: 否——轮询会自动进行,且为只读操作。无需用户确认。
功能: 轮询 DevOps Center 组织中异步测试执行的状态,直到执行完成、超时或失败。
前提条件
你需要一个有效的 runId(由 running-devops-test-suite 技能返回)和已确认的 doce-org-alias。如果尚未确定组织上下文,请先加载 checking-devops-prerequisites(前提条件 1–3)。
所需输入
| 输入 | 来源 |
|---|---|
runId | 由 running-devops-test-suite 技能返回 |
testType | 根据测试套件的测试提供方确定(Apex、Code Analyzer、UI/Provar、Flow) |
doce-org-alias | 通过 checking-devops-prerequisites 确定 |
轮询配置
| 测试类型 | 轮询间隔 | 最长等待时间 | 超时操作 |
|---|---|---|---|
| Apex 单元测试 | 15 秒 | 5 分钟 | 显示 runId,并提供重试选项 |
| Code Analyzer | 10 秒 | 3 分钟 | 显示 runId,并提供重试选项 |
| UI 测试(Provar) | 60 秒 | 20 分钟 | 显示 runId,并标记为待处理 |
| Flow 测试 | 20 秒 | 8 分钟 | 显示 runId,并提供重试选项 |
轮询查询
每个间隔按 runId 查询执行记录:
sf data query \
--query "SELECT Id, Status, TestsRan, TestsPassed, TestsFailed, CoveragePercentage FROM DevopsTestExecution WHERE Id = '<runId>' LIMIT 1" \
--target-org <doce-org-alias> \
--json
每次轮询时检查 Status 字段:
Queued/Running→ 等待后再次轮询Completed→ 继续分析结果Failed→ 显示错误,并提供重试或跳过选项
超时时
向用户显示 runId:
“测试运行耗时超出预期。你的运行 ID 是
<runId>。你可以在 DevOps Center 中手动查看状态,也可以让我继续等待——你更希望怎么做?”
超时后不要自动重试。等待用户指示。
完成时
将完整结果载荷传递给 analyzing-test-failures 技能进行分析。直接显示 Coverage、SuccessCount、FailureCount 和 QualityGateStatus。不要向用户显示原始 JSON。
相关技能
- 由
running-devops-test-suite启动运行(包括其重新触发模式) - 由
analyzing-test-failures处理失败分析
评论
支持 Markdown