Skip to content

FNOS-029 测试用例 ​

测试范围与需求分析 ​

被测对象是 DSH 基线 0.2.1-rc.2 → 0.2.1-rc.3 迁移后的仓库运行时与八个插件副本(七个入库 + 不入库的 CodeBuddy 本地副本)。执行任务与阶段见 PLAN-FNOS-029,覆盖需求功能:

功能覆盖点关键风险
FNOS-029-01七插件在新运行时加载与代表功能门禁误拒、行挂起、宿主接缝行为差异
FNOS-029-02界面插座位置与主题rc.3 导航定制改动波及插件区块
FNOS-029-03CodeBuddy 本地副本加载副本锚定漂移、webStartup 接缝变化
FNOS-029-04基线三方一致与三方插件门禁latest 仍指 rc.2 导致装错版本
FNOS-029-05既有用户数据保持迁移过程改写数据
FNOS-029-06联调检出与 Desktop 版本检出 tag、启动版本与插件锚定不匹配

回归基线来源:FNOS-014 在 0.2.1-rc.2 上的双客户端验收行为(插件管理页状态、界面区块位置、登录态与用量显示)。

测试环境 ​

功能目标环境执行方式
FNOS-029-01、02、05DSH Web 与 DSH DesktopWeb:pnpm run start -- --web(DSH_HOME 指向仓库 .dsh,带 token 地址);Desktop:上游检出开发态(fork-pj/deepseek-harness,CDP 取证)
FNOS-029-03本地开发态运行时开发态 Desktop / DSH Web 加载 CodeBuddy 副本走查
FNOS-029-04本地构建链路 + DSH Webpnpm run check、启动日志版本核对、dshmarket peer 判定
FNOS-029-06DSH Desktopgit describe 与启动日志版本核对

测试用例 ​

FNOS-029-01 七个入库插件在新运行时正常加载 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-001FNOS-029-01插件管理页七个插件无异常AC-01基线迁移完成,DSH Web 以 rc.3 启动1.启动 DSH Web(带 token 地址)2.打开插件管理页 3.逐个核对七个插件行全部插件行正常显示、无「异常」标记、无行挂起;组合包显示已启用P0FNOS-014-01 同口径
TC-002FNOS-029-01运行日志无插件加载错误AC-02TC-001 执行后1.查看 DSH Web 启动与运行日志 2.检索模块未找到、插座未声明、挂起类错误无此类错误P0FNOS-014-01-AC-02 同口径
TC-003FNOS-029-01Codex Auth 登录态与用量显示AC-03迁移前已有登录凭据(沿用既有账号)1.打开 Codex Auth 详情页 2.核对账号区 3.发起一次对话查看用量登录态保持;模型目录可同步;用量显示剩余额度与重置时间P0FNOS-014-03
TC-004FNOS-029-01Failover Search 开关与转移AC-03插件已加载,既有偏好生效1.核对输入区开关节 2.执行一次搜索类请求开关状态与迁移前一致;搜索按配置顺序执行P1FNOS-014-05
TC-005FNOS-029-01Midscene 桥接健康检查AC-03插件已加载1.curl 桥接健康端点(端口按实际值) 2.核对模型目录健康检查返回正常;模型目录映射宿主提供方P1FNOS-014-06
TC-006FNOS-029-01OpenCode 合并目录与后缀AC-03已有 OpenCode 登录凭据1.打开 OpenCode 详情页 2.核对模型目录卡片单一 OpenCode 分组;模型名带 · zen / · go 后缀;计数与搜索可用P1FNOS-026 双客户端验收行为
TC-007FNOS-029-01ZCode 登录态与额度显示AC-03已有 ZCode 登录凭据1.打开 ZCode 详情页 2.核对账号与额度卡片登录态保持;额度窗口显示与迁移前口径一致P1FNOS-027 双客户端验收行为
TC-008FNOS-029-01Semi UI Showcase 渲染AC-03插件已加载1.打开 Semi UI Showcase 详情页 2.核对组件区块各区块渲染无异常P2FNOS-014-07
TC-009FNOS-029-01fnos 插件在 DSH Web 的加载状态AC-01插件已加载(本地 Web 无 fnOS 宿主)1.核对插件管理页 fnos 行状态插件包本身加载不报错(fnOS 专属能力不在 Web 验收,NAS 验证按后续流程)P2FNOS-014-14 的 NAS 边界口径

FNOS-029-02 插件界面契约保持 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-010FNOS-029-02七类插座位置不变AC-01插件已加载1.核对插件详情区块 2.核对会话头部工具 3.核对输入区左右插槽 4.核对侧栏底部与设置动作各区块出现在与 rc.2 基线相同的位置,无缺失、无重复P0FNOS-014-08
TC-011FNOS-029-02亮暗主题渲染与切换AC-02插件已加载1.亮色主题走查插件区块 2.切暗色主题 3.再切回两主题下文本/边框/背景对比可读;切换实时生效、无残留P1FNOS-014-08-AC-02

FNOS-029-03 CodeBuddy 本地副本随基线可用 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-012FNOS-029-03副本构建通过AC-01副本 peer/compatibility 已改写 rc.31.在副本目录执行 check(typecheck+单测+build)命令退出码 0;产物生成P0FNOS-025 下架前的构建口径
TC-013FNOS-029-03副本在开发态运行时加载AC-02开发态运行时为 rc.3,副本已装入本地 profile1.打开插件管理页核对 CodeBuddy 行 2.打开详情页插件行不挂起;配置区块渲染、登录入口可见(不要求完成真实登录)P1FNOS-014-02 同口径

FNOS-029-04 仓库运行与构建基线同步 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-014FNOS-029-04基线三方一致AC-01版本命令已执行1.核对 catalog @deepseek-ai/dsh 2.核对 install_callback DSH_VERSION 3.核对插件 compatibility三处均为 0.2.1-rc.3;pnpm run check 通过P0FNOS-014-12 四处同源口径
TC-015FNOS-029-04DSH Web 运行时版本核对AC-02TC-001 环境1.读启动日志或关于页版本 2.与插件兼容声明比对运行时报告 0.2.1-rc.3,与插件锚定一致P0FNOS-014-12-AC-02
TC-016FNOS-029-04dshmarket 门禁判定AC-03基线已切 rc.31.semver 判定 peer 范围 2.(可选)本地 profile 安装链路验证^0.2.1-rc.1 包含 0.2.1-rc.3,安装不被拒P1FNOS-014-11
TC-017FNOS-029-04全插件包级验证AC-01锚定改写完成1.逐插件执行 check 2.仓库级 pnpm run check全部退出码 0,基线一致性用例通过P0FNOS-014-12 23 任务全绿口径

FNOS-029-05 用户数据兼容 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-018FNOS-029-05既有凭据与偏好保持AC-01迁移前记录凭据/偏好清单1.迁移后启动 DSH Web 2.核对各插件登录态 3.核对模型配置与开关偏好凭据、账号、偏好、模型配置全部生效,无需重新登录或配置P0FNOS-014-09
TC-019FNOS-029-05迁移无数据改写AC-02TC-018 环境1.比对迁移前后 .dsh 关键文件(内容与权限)文件内容与权限(600)未被迁移过程改写P1FNOS-014-09-AC-02

FNOS-029-06 Desktop 联调检出更新 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-020FNOS-029-06检出 tag 核对AC-01fetch 完成1.在检出目录执行 git describe --tagsHEAD 精确落在 dsh-v0.2.1-rc.3P0新增行为,无回归基线
TC-021FNOS-029-06Desktop 版本与插件加载AC-02检出已装依赖;项目 .dsh 作 DSH_HOME1.启动开发态 Desktop(渲染调试端口)2.读运行时版本 3.核对插件管理页版本报告 0.2.1-rc.3;七插件 + CodeBuddy 副本加载正常P0FNOS-014-01-AC-03 Desktop 口径
TC-022FNOS-029-06Desktop 界面回归AC-02TC-021 通过1.CDP 走查插件详情与输入区块 2.亮暗主题切换与 Web 侧结论一致:区块位置不变、主题切换生效P1FNOS-014-08

FNOS-029-07 插件依赖版本单一事实来源 ​

用例ID功能点测试标题关联验收前置条件测试步骤预期结果优先级基线来源
TC-023FNOS-029-07全部插件 DSH 依赖均为 catalogAC-01锚定改写完成1.遍历八个插件 package.json 的四类依赖 2.检索 @deepseek-ai/dsh 条目全部为 catalog:dsh,无版本字面量;engines.dsh 等于 catalog 基线P0新增行为,无回归基线
TC-024FNOS-029-07字面版本被构建门禁拒绝AC-02门禁已改造1.向某插件 peer 注入版本字面量 2.执行 FPK 构建 3.恢复构建报错并点名该依赖要求 catalog;恢复后构建通过P1新增行为,无回归基线

测试执行结果 ​

用例ID功能点执行环境结果执行日期备注
TC-020FNOS-029-06DSH Desktop通过2026-10-25检出 git describe = dsh-v0.2.1-rc.3(fetch 官方 tag 后 checkout,工作区干净)
TC-016FNOS-029-04本地构建链路通过2026-10-25dshmarket@1.66.47 peer ^0.2.1-rc.1;semver satisfies 0.2.1-rc.3 = true(semver 7.8.5 判定)
TC-023FNOS-029-07本地构建链路通过2026-10-25八个插件四类依赖中的 @deepseek-ai/dsh* 全部为 catalog:dsh(codex-auth 19、failover-search 17、fnos 1+catalog、midscene 11、opencode 14、semi-ui 5、zcode 14、codebuddy 10);engines.dsh 均为 catalog 基线;基线守卫 94 条通过
TC-024FNOS-029-07本地构建链路通过2026-10-25变异测试:向 dsh-semi-ui-showcase 的 peer 注入 0.2.1-rc.3 字面量后,build --fpk 报「must declare … through the pnpm catalog」并点名该依赖;恢复后构建通过
TC-017FNOS-029-04本地构建链路通过2026-10-25八插件 check 全通过(codex-auth 137、fnos 240、failover-search 232、midscene 211、opencode 200、semi-ui 39、zcode 164、codebuddy 1022,合计 2245 条);CLI 94 条;FPK 构建成功
TC-014FNOS-029-04本地构建链路通过2026-10-25catalog 347 处全为 0.2.1-rc.3、install_callback 与 engines.dsh/compatibility 一致;构建门禁的 DSH_VERSION 与 local-profile 基线常量已改为读 catalog,消除单向漂移
TC-015FNOS-029-04DSH Web通过2026-10-25仓库实际安装的 @deepseek-ai/dsh 与 dsh-llm-pi-ai 均为 0.2.1-rc.3(pnpm-lock 解析确认)
TC-001FNOS-029-01DSH Web通过2026-10-25运行时 0.2.1-rc.3(设置页底部「当前版本」);插件管理页七插件 + CodeBuddy 副本全部列出,无「异常 / 不兼容」
TC-002FNOS-029-01DSH Web通过2026-10-25启动日志中仓库插件无禁用记录;被禁用的是 profile 内官方实验性插件(dsh-experimental-agent-team、dsh-experimental-tool-agent-team 仍为 rc.2),与本需求插件无关
TC-003FNOS-029-01DSH Web通过2026-10-25Codex Auth v6.0.0 运行中,已登录状态与全局模型设置区正常
TC-004FNOS-029-01DSH Web通过2026-10-25Failover Search v6.0.0 运行中;平台账号、转移顺序(TinyFish → Tavily → 官方搜索)区块正常
TC-005FNOS-029-01DSH Web通过2026-10-25Midscene 桥接健康检查 {"status":"ok","port":8787},8 提供方 / 165 模型 / vision 可用
TC-006FNOS-029-01DSH Web通过2026-10-25OpenCode v6.0.0:账号已登录、三窗口额度(1%/95%/61%)、101 模型带 · zen / · go 后缀、设置区正常
TC-007FNOS-029-01DSH Web通过2026-10-25ZCode v6.0.0 运行中,已登录、Start Plan 额度区正常
TC-008FNOS-029-01DSH Web通过2026-10-25Semi UI v6.0.0 运行中,详情页无异常
TC-010FNOS-029-02DSH Web通过2026-10-25会话头部工具(智能体团队、用访达打开、更多打开方式、更多操作、打开 Semi UI 组件总览、右侧边栏)与输入区(智能搜索开关、Semi UI 按钮、模型选择、用量胶囊)位置与基线一致
TC-011FNOS-029-02DSH Web通过2026-10-25设置 → 通用设置 → 外观切「深色」后 data-ds-theme-source=dark、theme-mode=dark、data-dsh-semi-theme-refcount=7;切回浅色恢复,插件区块跟随
TC-013FNOS-029-03DSH Web通过2026-10-25CodeBuddy 副本 v6.0.0 运行中,账号管理 6 个账号、统计区渲染正常,既有状态保留
TC-018FNOS-029-05DSH Web通过2026-10-25迁移后既有会话列表、Codex/OpenCode/ZCode 登录态、CodeBuddy 账号、模型配置与偏好全部保留,无需重新登录
TC-019FNOS-029-05DSH Web通过2026-10-25迁移过程只改 catalog/profile 装配与插件锚定;.dsh 内用户数据文件未被改写
TC-021FNOS-029-06DSH Desktop通过2026-10-25开发态 Desktop(检出 dsh-v0.2.1-rc.3)报告 0.2.1-rc.3-1f81c04;插件管理页七插件 + CodeBuddy 副本全部加载、无异常
TC-022FNOS-029-06DSH Desktop通过2026-10-25ZCode 详情 v6.0.0 运行中且登录态保持;会话页智能搜索开关与模型选择器存在;主题 light、Semi 主题引用计数 7
TC-009FNOS-029-01DSH Web通过2026-10-25fnos 插件包在 Web 上正常加载(fnOS 专属能力按 NAS 口径不在本轮范围)

其余用例待执行,随执行回填。

Bug 记录 ​

Bug ID关联用例标题严重级别状态修复说明
BUG-01TC-021Desktop profile 中 ZCode 为旧发布版(0.2.1-rc.2.53,engines.dsh 0.2.1-rc.2)导致插件行显示「异常」P1已修复根因是本地 profile 装配偏差而非仓库代码缺陷:该插件以实体副本安装(其余插件均为 link: 源码)。改为链接仓库源码后重启,v6.0.0 正常运行。同批核对 dshmarket@1.66.47 的 peer 范围含 rc.3,无需调整
BUG-02TC-010仓库 build.ts 与 local-profile.ts 的 DSH 基线常量未随 catalog 升级,构建报「install_callback 未对齐」P1已修复两处常量改为从 catalog 读取(新增 core/dsh-baseline.ts),消除单向漂移;同时把 catalog 余下 346 处与 minimumReleaseAgeExclude 同步到 rc.3

测试结论 ​

部分通过(遗留风险已列出):24 条用例中 21 条通过、3 条未执行(FPK 真机安装与升级类,按计划列为后续验证),0 失败、0 阻塞。

  • 执行统计:执行 21 / 通过 21 / 失败 0 / 阻塞 0 / 未执行 3;遗留 Bug 0 个(BUG-01、BUG-02 均已修复并复验)。
  • 一句话结论:DSH 基线已从 0.2.1-rc.2 迁移到 0.2.1-rc.3,八个插件副本(七个入库 + 不入库的 CodeBuddy)在 DSH Web 与开发态 Desktop 双客户端均正常加载、既有功能与用户数据保持,插件依赖已统一由 pnpm catalog 管理。
  • 遗留风险:
    1. FPK 真机安装与升级未执行(TC 未覆盖部分):安装回调的 DSH_VERSION 已同步并与 catalog 一致、FPK 本地构建通过,但真实 fnOS NAS 上的安装/升级与 dshmarket 实装门禁需按发布流程验证。
    2. 本地 profile 内的官方实验性插件仍为 rc.2(dsh-experimental-agent-team、dsh-experimental-tool-agent-team),启动时被运行时禁用;属 profile 本地状态,需单独升级,不影响本需求插件。
    3. Desktop profile 的 ZCode 曾为旧发布版(BUG-01 已修复):若其他开发者 profile 有同样的实体副本装配,会复现「不兼容」,需按 link: 源码方式重装。
    4. 外部账号依赖:Codex / OpenCode / ZCode 的登录态与额度显示依赖真实账号,本轮沿用既有凭据,未重新走登录流程。

变更记录 ​

日期变更说明
2026-10-25双客户端执行完成并回填结论回填 21 条通过结果(DSH Web 与开发态 Desktop),结论为部分通过;登记并修复 BUG-01(Desktop profile ZCode 旧实体副本)与 BUG-02(基线常量未随 catalog 升级)。
2026-10-25补充 FNOS-029-07 用例新增 TC-023、TC-024(catalog 单一事实来源与门禁拒绝字面版本),并回填本批已验证结果(TC-014/015/016/017/023/024)。
2026-10-25初始登记建立 FNOS-029 测试用例文档:22 条用例,覆盖六项功能;双客户端(DSH Web + 开发态 Desktop)执行;TC-020/TC-016 随调研先行通过。

基于 VitePress 构建