XiTest PRD · v1.0
XiTest 产品需求文档
羲音测试台 · L2 测试验证平台
算法质量红线 · Tapeout 前置强制关卡
4
测试层级
1000+
回归用例
48h
HIL 连续压测
XiTest 产品需求文档 PRD v1.0
摘要
XiTest(羲音测试台)是 Xisound 六层矩阵中 L2 工具层的测试验证平台——面向 Xisound 内部算法、硬件、工具团队的全自动测试引擎。 本 PRD 定义 XiTest v1.0(2027 Q4 内部发布)的 Unit / Integration / Regression / UI 四层能力与首发用例集。
1. 产品定位
1.1 一句话定位
XiTest:确保每一行 XiAlgo 代码、每一次 XiDSP Tapeout、每一次 XiStudio 发版都可验证的全自动测试平台。
1.2 目标用户
- 主:Xisound 算法团队 / 硬件团队 / 工具团队
- 次:Xisound QA 团队 / DevOps
- 辅(v2.0+):Enterprise 客户(为自定义 XiAlgo 做测试)
1.3 核心价值主张
- 质量红线:Tapeout / 发版前强制闸门,杜绝回归
- 全自动:从代码提交到测试报告全流程无人工介入
- 可 CI 集成:GitHub Actions / GitLab CI / Jenkins 即插即用
- 硬件在环:支持真实 XiDSP 芯片实时验证
2. 四层测试能力
2.1 测试金字塔
graph TB
UI[UI Regression<br/>Playwright]
Reg[Regression<br/>历史用例]
Integ[Integration<br/>算法链路 E2E]
Unit[Unit<br/>单算法模块]
UI --> Reg
Reg --> Integ
Integ --> Unit
class UI xyWarn
class Reg xyL3
class Integ xyL2
class Unit xyL1
2.2 各层需求
| 层级 | 目标 | 工具 | 运行频率 |
|---|---|---|---|
| Unit | 验证单个算法函数输入输出 | Google Test / Catch2 | 每次提交 |
| Integration | 验证算法链路端到端声学指标 | 自研 xy-test-runner | 每日 |
| Regression | 历史 Bug 不复发 | 自研 + 用例数据库 | 每次发版前 |
| UI | XiStudio/XiForge 视觉+交互 | Playwright + pixelmatch | 每次发版前 |
2.3 声学指标验证
| 指标 | 测量方法 | 默认容差 |
|---|---|---|
| 频响 | Sweep + FFT | ±0.1 dB |
| THD+N | 1 kHz 正弦 + 失真分析 | ±0.001% |
| SNR | 静音段 RMS | ±0.5 dB |
| RMS Level | 整段平均 | ±0.5 dB |
| 延迟 | 脉冲互相关 | ±10 samples |
| 相位 | 频域相位差 | ±5 度 |
3. 核心功能需求
3.1 测试用例管理
| 能力 | 需求 |
|---|---|
| 用例格式 | YAML + JSON(结构化参数)+ WAV(参考音频) |
| 用例组织 | 按算法 / 按场景 / 按优先级 三维索引 |
| 版本控制 | 用例与代码同仓库 · Git 管理 |
| 金标管理 | 基线 WAV + 审批流(算法 lead + QA 双签) |
| 标签 | smoke / regression / tapeout / nightly |
3.2 执行引擎
| 能力 | 需求 |
|---|---|
| 并行度 | ≥ 16 worker(单机) · ≥ 100 worker(集群) |
| 隔离 | Docker 容器化运行 |
| 资源调度 | CPU / GPU / HIL 硬件队列 |
| 超时 | 用例级超时 + 全局超时 |
| 重试 | 失败自动重试 ≤ 3 次 |
3.3 硬件在环(HIL)
| 能力 | 需求 |
|---|---|
| 支持硬件 | XiDSP-D1(v1.0)/ D2(v1.1)/ D3(v1.2) |
| 烧录方式 | XiStudio CLI · JTAG |
| 音频 I/O | USB 音频接口 / 专业声卡 |
| 压测时长 | 连续 48 小时无崩溃 |
| 故障注入 | 电压波动 / 温度 / EMC 模拟 |
3.4 报告与通知
| 能力 | 需求 |
|---|---|
| 报告格式 | HTML / PDF / JUnit XML |
| 可视化 | 通过率趋势图 / 失败用例聚焦 / WAV 对比波形 |
| 通知渠道 | Email / 企业微信 / Slack / 飞书 |
| 失败归因 | 自动标注是新增 Bug 还是已知问题 |
| 存档 | 全部测试报告保留 2 年 |
3.5 CI 集成
- GitHub Actions:提供 Reusable Workflow
- GitLab CI:提供 include 模板
- Jenkins:提供共享库
- 触发方式:push / PR / schedule / manual
- 结果反馈:PR 评论 + Status Check
4. 用户故事与使用场景
4.1 场景 A:算法开发者日常
- 角色:XiAlgo 团队开发者
- 需求:新增一个 EQ 模块,想快速验证
- 流程:
- 在 XiAlgo 仓库提交代码 + 单测
- CI 触发 XiTest Unit 测试 → 3 分钟出结果
- PR 审核时触发 Integration 测试 → 20 分钟
- Merge 后每日跑 Regression 套件 → 1-2 小时
4.2 场景 B:XiDSP Tapeout 验证
- 角色:B 芯片硬件工程师
- 需求:Tapeout 前跑完整算法回归
- 流程:
- 排队申请 HIL 测试集群(节假日前预约)
- 触发 tapeout-full 套件(1000+ 用例)
- 48 小时连续运行(含故障注入)
- 生成放行报告 → CTO + 算法 lead 双签
- Tapeout 放行 或 打回修复
4.3 场景 C:XiStudio 发版前 UI 回归
- 角色:工具团队发版工程师
- 需求:XiStudio v1.2 发版前做 UI 回归
- 流程:
- release/1.2 分支触发 UI Regression
- Playwright 跑 100+ 场景(开项目 / 拖流图 / 烧录 / 调音)
- pixelmatch 比较所有截图 diff ≤ 0.5%
- 所有场景通过 → 发版 | 任何失败 → 打回
4.4 场景 D:XiMind 辅助测试生成(v1.1+)
- 角色:QA 工程师
- 需求:扩充回归覆盖率,但想不到新用例
- 流程:
- 让 XiMind 分析近 3 月 Bug 记录
- AI 生成 20 个新边界用例(参数极值 / 异常输入)
- QA 人工 review → 接受 15 个
- 并入回归库持续使用
5. 非功能需求
5.1 性能
| 指标 | 需求 |
|---|---|
| 单 Unit 测试平均 | ≤ 100 ms |
| 单 Integration 测试平均 | ≤ 30 s |
| 全量 Regression 运行 | ≤ 2 h(1000 用例 / 16 worker) |
| HIL 单用例 | ≤ 5 min |
| 报告生成 | ≤ 30 s |
5.2 可靠性
- 平台稳定性 ≥ 99.5%(全年)
- 测试结果可重复性 ≥ 99%(同输入 → 同结果)
- 假失败率 ≤ 0.5%(环境/资源导致)
5.3 可观测性
- 全链路 trace(OpenTelemetry)
- 测试耗时监控(Prometheus + Grafana)
- 历史通过率趋势
6. 与生态产品的关系
graph TB
QA[算法/硬件/工具/QA 团队]
QA --> XiTest[XiTest<br/>L2 测试平台]
XiAlgo[XiAlgo<br/>L3 被测对象] -.被调用.-> XiTest
XiDSP[XiDSP<br/>L0 HIL 硬件] -.实时测试.-> XiTest
XiStudio[XiStudio<br/>L4 UI 被测] -.Playwright.-> XiTest
XiTest --> Report[HTML/PDF 报告]
XiTest --> Gate[Tapeout 放行 / 发版闸门]
XiMind[XiMind<br/>L5] -.v1.1+<br/>AI 编排.-> XiTest
class QA xyL5
class XiTest xyL2
class XiAlgo xyL3
class XiDSP xyL0
class XiStudio xyL4
class Report,Gate xySuccess
class XiMind xyL5
7. 研发流程与里程碑
7.1 v1.0 开发时间线
gantt
title XiTest v1.0 开发甘特图
dateFormat YYYY-MM
axisFormat %Y-%m
section 框架
Unit 引擎 MVP :2026-07, 3M
Integration E2E :2026-10, 3M
section 扩展
HIL 接入 D1 :2027-01, 3M
UI 回归框架 :2027-04, 3M
section 发布
CI 全面集成 :2027-07, 3M
v1.0 正式版 :milestone, 2027-12, 0d
7.2 关键里程碑
- 2026 Q3:Unit + Integration MVP · 内部试用
- 2026 Q4:Regression 套件启用
- 2027 Q1:HIL 接入 XiDSP-D1
- 2027 Q2:UI 回归框架上线
- 2027 Q3:CI 全面集成
- 2027 Q4:v1.0 GA · 成为 Tapeout 强制关卡
8. 成本与投入
8.1 开发投入(估算)
| 项 | 人月(估) |
|---|---|
| 核心框架(Unit + Integration) | 20 |
| HIL 硬件 + 驱动 | 15 |
| UI 回归框架 | 10 |
| CI 集成 + 报告 | 8 |
| 初始用例编写 | 15 |
| 合计 | ~68 人月 |
8.2 硬件投入
- HIL 测试机柜 × 2(每台约 ¥20-50 万)
- XiDSP EVB 集群(50-100 块)
- 专业声卡 + 测量设备 × 10
9. 风险与应对
| 风险 | 概率 | 影响 | 缓解 |
|---|---|---|---|
| 测试环境不稳定导致假失败 | 高 | 中 | 环境监控 + 失败自动重试 |
| HIL 硬件资源紧张 | 中 | 中 | 优先级队列 + 云 HIL 规划 |
| 金标基线维护成本高 | 中 | 中 | 审批流 + 自动 diff 建议 |
| 算法团队抵触写测试 | 中 | 高 | 集成到工作流 · 无测试不 Merge |
| CI 耗时过长 | 中 | 中 | 分层测试 + 缓存 + 并行 |
10. 验收标准(v1.0 GA)
10.1 功能
- Unit 测试覆盖率 ≥ 80%(XiAlgo 核心)
- Integration 用例 ≥ 500(覆盖 Top 场景)
- Regression 用例 ≥ 1000
- HIL 支持 XiDSP-D1 完整测试
- UI 回归覆盖 XiStudio 核心流程 100+ 场景
- GitHub Actions + GitLab CI 集成就绪
10.2 性能
- Unit 平均 ≤ 100 ms
- 全量 Regression ≤ 2 小时
- HIL 48 小时压测通过
10.3 稳定性
- 假失败率 ≤ 0.5%
- 平台可用性 ≥ 99.5%
10.4 流程
- Tapeout 放行流程文档化
- 发版闸门文档化
- QA 团队 SOP 就绪
11. 附录
11.1 关联文档
11.2 版本历史
| 版本 | 日期 | 要点 |
|---|---|---|
| v1.0 | 2026-05-05 | 首版 · 四层测试 + HIL + UI 回归完整需求 |
prd.md · D2-P7-PRD-001 · v1.0 · 2026-05-05 · Xisound 产品中心 · 调音产品组