Files
zeyu.fz ef463e8d5d test(e2e): 优化检索结果标记召回判断并完善服务调优用例
- 新增节点召回标记判断函数 nodesRecallMarker,避免误判 marker 出现位置
- 将所有相关轮询断言替换为基于 nodesRecallMarker 的更严格判断
- 调整删除测试中对误伤判断的断言逻辑,确保准确检测召回标记
- 扩展服务调优用例,增加描述和温度参数调优测试,验证配置持久化
- 添加通过配置文件更新 kb_search_configs 并校验嵌套配置修改生效
- 部署后验证发布版本配置正确包含所有调优项
- 更新流程注释与断言提示,提升测试用例可读性和覆盖度
2026-08-05 19:56:52 +08:00

3.7 KiB
Raw Permalink Blame History

Journey E2E用户旅程链路测试

从用户 case 出发验证关键流程可用性:每条 journey = 用户带着一个目标跨命令走完整回路, 以「fixture 标记词能否被召回」判定回路闭合(区别于 ../*.e2e.test.ts 的单命令契约测试)。

旅程映射

# 用户 Case 文件 闭环断言
J1 冷启动:建库并获得首个答案 j1-cold-start.e2e.test.ts retrieve/search(beta) 召回标记词chat 回答引用标记词(软)
J2 内容运维:文档增删的可见性 j2-content-ops.e2e.test.ts 双标记词命中 → 删除其一后 markerB 消失且 markerA 仍在(硬)
J3 检索精修chunk 排除生效 j3-chunk-tuning.e2e.test.ts exclude 后排除标志生效include 恢复。retrieve 不过滤被排除 chunkis_displayed_chunk_content 标志为准
J4 服务调优:草稿→修改→发布 j4-service-tuning.e2e.test.ts beta 草稿可用、update 落库、发布后正式版详情携带修改且可用(硬)
J5 数据面治理collection/category/file j5-data-plane.e2e.test.ts 自建类目内文件可见/可删,类目删后消失(硬)
J6 退场清理:删库验证消失 复用 ../knowledge-kb-delete.e2e.test.ts live 链 delete 后 list 不再包含(硬)

约定

  • gatingJ1J4 isKbAdminE2EReady()J5 isConnectorE2EReady()collection 无删除 API仅手动开启gating 函数/环境变量保留 CONNECTOR 旧名)。
  • 自建自清:所有资源自建 + try/finally 清理kb 删除走 deleteKbWithRetryIndexStatusError 重试); 数据中心文件用 knowledge file delete 回收;清理失败不掩盖,落 resources.json 供人工回收。
  • 软/硬断言可用性关键路径硬断言fail依赖服务端语义/延迟波动的信号软断言 recordSoft,只落报告不 fail人工复核
  • 日志产物:每次 live 运行在 test/output/<session>/e2e-vp-<journey>-<ts>/ 生成 journey-report.md(步骤表 + 软断言区 + 未清理资源警示)、分步 stdout/stderr、resources.jsonjourney.log

运行

pnpm run test:journey            # 全部 journey无凭证时全部 skip
vp test packages/commands/tests/e2e/knowledge/journeys/j1-cold-start.e2e.test.ts

live 运行需 .envBAILIAN_E2E=1 + DashScope API key + BAILIAN_WORKSPACE_IDJ5 另需 BAILIAN_E2E_CONNECTOR=1