Skip to content

Latest commit

 

History

History
82 lines (60 loc) · 6.37 KB

File metadata and controls

82 lines (60 loc) · 6.37 KB

GitCode Actions 测试策略

1. 目的与边界

本文件目标是开源基础设施团队用于评估gitcode是否足以作为Mind,openEuler等社区的CI底座,通过分析,测试并评估 GitCode Actions 是否可以供各社区使用;

本文说明测试什么、为什么测试、由哪些 agent 生成测试用例,以及如何保证测试结论的质量。具体的 agent 操作、用例 schema 和执行脚本分别以 phase01.mdphase02.md 及其目录中的规则为准。

2. 策略输入

测试策略和场景选择以 phase01/inputs/ 中的专家材料为输入来源,而非以覆盖率指标为目标。主要输入及其用途如下。

输入类型 用途
GitCode 规格与 API 参考 确定受测能力、边界、默认行为与可观察证据,这部分功能着重测试异常,边界场景,正向场景通过自动化尽可能覆盖
GitHub 参考与真实 workflow 样本 识别迁移、语义和兼容性风险
安全知识与已知问题模式 包含两部分:1)历史ICSL,护网发现的问题;2)github security lab提供的安全最佳事件,通过最佳实践的场景进行测试
历史问题举一反三 包括两部分:1)26年H1已经发现的CI 流水线的功能问题 2)已经由infra团队提供的性能优化措施例如下载环境,编译缓存等,是否可以继续在gitcode action中使用,是否会导致CI耗时劣化
各社区当前的CI规格,并发情况 用于验证各社区规格之和,gitcode action平台的并发机制是否满足

上面的输入可持续补充,补充的新场景由phase01生成用例由phase02生成自动化脚本并验证

3. 测试计划

以下是外部验收优先覆盖的高风险场景类别。每个类别可按具体规格、专家输入和可用环境细化为少量代表性用例;只有输入形态、信任边界或故障模式会改变结论时才增加变体。

验收场景 计划 责任人
完成第一版测试用例的输出 7/21 guoxiaozhen
phase2调通 7/21 yulin
打通phase01 + phase02,生成正确的yaml 7/22 chenqi
用例并发执行 7/22 yunlin
区分用例自动/手动 7/23 chenqi
完善phase2的自动化工具,达到大部分用例都能自动化 7/24 yunlin
易用性,性能,安全用例完整输出 7/24 guoxiaozhen
用例检查,用例完整 7/25 guoxiaozhen
phase01输出yaml完整无误 7/25 chenqi
phsase02 用例自动化 7/25 yunlin
GitCode action正向测试 + 异常场景覆盖 7/25
安全场景测试 7/25
历史功能问题举一反三,详见 inputs 7/25
GitCode action的语法和github的差异有哪些,是否会导致明确的体验差异 7/25
参考当前计算社区的规格,进行并发测试 7/25
基本的稳定性测试 7/25
文档易用性测试,常见action,api文档和使用文档,与github的对比 7/25
NPU资源池接入,是否可用,并支持联邦集群方案 7/27
历史优化方案在gitcode action中是否仍然可用,同样的CI用例是否耗时会劣化 7/29

4. Agent 团队与责任链

agent 团队覆盖从风险发现到结果取证的完整链路。只有前两组生成或治理测试场景;执行组不扩大测试范围,只负责可靠执行、采集证据和辅助分诊。

阶段 角色 负责内容
风险与场景生成 规格分析 agent 将规格整理为能力、约束、默认行为和存疑点
风险与场景生成 兼容性 diff agent 识别 GitCode 与 GitHub 或真实 workflow 的疑似语义差异
风险与场景生成 安全 agent 从信任边界与敏感资产出发定义防御性风险场景
风险与场景生成 稳定性 agent 定义可用性、边界、并发、故障和恢复场景
风险与场景生成 易用性 agent 定义错误信息、可诊断性和迁移摩擦场景
质量治理与用例生成 测试架构师 / orchestrator 汇总专家输入,确定优先级,识别重复与盲区
质量治理与用例生成 评审门禁 agent 审查场景是否可测、是否有明确预期和证据,并拦截低价值或重复项
质量治理与用例生成 用例 writer / reviewer agent 将准入场景写成可评审文本用例,并生成可执行 YAML
执行与证据分析 harness orchestrator 按隔离与顺序要求协调执行、异常处理和证据留存
执行与证据分析 YAML compiler 将可执行用例转换为可在 GitCode 上运行的 workflow
执行与证据分析 failure analyst 基于预期、日志和实际结果给出失败原因初判,不改变原始判定

5. 结果与外部报告

每个已执行或已评估的场景只能采用下列结论之一。结论面向问题发现和风险沟通,不构成对 GitCode 发布的批准或否决。

结论 定义 报告要求
通过 自动化或人工测试完整执行,所有预期断言满足 记录用例、方法、关键证据和适用范围
未发现问题 已尝试测试,但仅获得有限或间接证据,未形成完整断言,也未发现异常 说明证据局限,不能表述为通过或风险消除
不可测试 自动化无法完成且人工也无法在当前条件下验证,或必要条件缺失 说明自动化与人工测试的阻碍、缺失条件和保留风险

发现与预期不符的问题时,报告应附最小复现条件、实际与预期结果、可观察证据、受影响场景和严重度判断;这些信息用于 GitCode 团队自行评估与处置。