乐于分享
好东西不私藏

AI测试助手效果差?先建好这7个知识库模块(附模板和命令)

AI测试助手效果差?先建好这7个知识库模块(附模板和命令)

事情是这样的。

我最近在帮几个团队搭 AI 测试助手,发现一个特别有意思的现象。同样一个问题,同样是那个 AI,问出来的东西完全不一样。

你猜怎么着。

有人问「支付模块改动了需要回归什么」,AI 回了一句,支付成功、支付失败、取消支付。没了。就这。

但另一个团队问同样的问题,AI 列了一长串,支付回调幂等、订单状态同步、库存回滚、优惠券核销、MQ 重复消费、退款链路,最后还补了一句,历史上这个模块出现过重复扣款,建议重点回归。

我当时就愣住了。

同一个 AI,同一个问题,差距咋就这么大?

后来我琢磨明白了,差的不是 AI,是知识库。

没有知识库的 AI,每次提问都像新来的实习生,啥都得从头教。有了知识库,AI 才开始像那个干了三年的老测试,知道历史坑点、懂业务规则、熟悉高危模块。

企业级 AI 测试助手真正值钱的地方,不是它能不能回答问题,而是它有没有团队经验。

今天我们就来手把手搭一个。

没有知识库的 AI,只是临时问答工具

先看两组真实对比。同样输入「支付模块改动了,需要回归什么」:

❌ 没有知识库的 AI:

建议测试支付成功、支付失败、取消支付。

回答泛泛,缺项目上下文,不知道历史 Bug,也不懂团队规范。每次提问质量完全取决于你这次 Prompt 写得多好。

✅ 有知识库的 AI:

除支付成功/失败外,还需重点回归:支付回调幂等、订单状态同步、库存回滚、优惠券核销、MQ 重复消费、退款链路。历史上该模块出现过重复扣款和订单状态未更新。

带出历史坑点和关联模块,回归范围可复用、可审计,新人也能获得「老测试」视角。

无知识库AI回答泛泛,有知识库AI带出历史坑点

核心结论一句话,知识库越强,AI 助手越像团队里的老测试,而不是通用 ChatGPT。

知识库不是文档仓库,而是结构化经验

很多团队以为,把需求文档、Bug 单、测试报告全部塞进去,就是知识库了。

其实不对。

我见过最夸张的团队,把过去三年的 PRD 全文丢进一个文件夹,然后跟 AI 说,你学吧。AI 学了个寂寞,问啥都是在一堆 PDF 里碰运气。

AI 测试知识库 = 把测试经验按场景、风险、规则、案例结构化沉淀,让 AI 能检索、能复用,而不是在一堆 PDF 里碰运气。

常见误解
正确理解
存了多少文档
AI 能不能找到可复用的测试经验
把 PRD 全文丢进去
提炼规则、坑点、回归点等字段化内容
写完就归档
随版本、Bug 闭环持续更新

知识库在企业级助手里解决 4 件事,AI 不知道历史 Bug、不懂业务规则、不知道高危模块、不知道团队测试标准。本质是把团队经验变成 AI 可调用的长期记忆。

这四件事,每解决一件,AI 就老练一分。

一键创建七大模块目录骨架

企业级知识库一定要目录清晰,因为 AI 需要按类别检索,而不是全文搜索一堆 Word。

在终端进入项目根目录,执行:

# 创建根目录及七大模块
mkdir -p AI_Test_Knowledge_Base/{historical_bugs,business_rules,api_exceptions,log_patterns,sql_experience,performance_experience,regression_rules}

# 创建各模块示例子文件(可按项目增删)
touch AI_Test_Knowledge_Base/historical_bugs/支付历史 Bug.md
touch AI_Test_Knowledge_Base/historical_bugs/订单历史 Bug.md
touch AI_Test_Knowledge_Base/business_rules/支付业务规则.md
touch AI_Test_Knowledge_Base/business_rules/订单业务规则.md
touch AI_Test_Knowledge_Base/api_exceptions/下单接口异常规则.md
touch AI_Test_Knowledge_Base/log_patterns/常见日志异常规律.md
touch AI_Test_Knowledge_Base/sql_experience/SQL 风险规则.md
touch AI_Test_Knowledge_Base/performance_experience/支付压测常见问题.md
touch AI_Test_Knowledge_Base/regression_rules/支付模块回归规则.md

# 查看结构
tree AI_Test_Knowledge_Base 2>/dev/null || find AI_Test_Knowledge_Base -type f | sort

完成后目录应类似:

AI_Test_Knowledge_Base/
├── historical_bugs/          # 历史 Bug 库
├── business_rules/           # 业务规则库
├── api_exceptions/           # 接口异常库
├── log_patterns/             # 日志规律库
├── sql_experience/           # SQL 经验库
├── performance_experience/   # 压测经验库
└── regression_rules/         # 回归规则库

⚠️ 注意:文件名建议用「模块 + 类型」命名(如 支付历史 Bug.md),避免 文档 1.md。AI 和人都靠文件名判断该读哪份。

若团队用飞书协作,可在知识库中按同样结构建文件夹,或用 lark-cli 把本地 Markdown 导入为在线文档,便于 @ 文档、权限管理与评审。

七大模块怎么填:字段标准与示例

每个模块都按同一节奏,标准字段 → 填写步骤 → 复制模板 → 自检清单。建议从历史 Bug 和业务规则开始,这两块 ROI 最高。

模块 1:历史 Bug 库

历史问题最容易复发,尤其是订单、支付、库存、优惠券、权限等核心模块。

标准字段: Bug 标题 | 问题现象 | 触发条件 | 影响模块 | 根因分析 | 修复方式 | 回归重点 | 风险等级 | 关联模块

从 Jira/禅道/飞书项目导出近 6–12 个月 P0/P1 Bug,筛支付、订单相关至少 5 条,按模板填写(不要只写标题):

# 支付成功但订单未支付

## 问题现象
用户微信支付成功,但订单状态仍显示未支付。

## 触发条件
支付回调延迟、MQ 消费失败、订单状态更新异常。

## 影响模块
支付、订单、MQ、支付流水。

## 根因分析
回调接口未幂等 / 订单状态更新事务失败(待项目填写真实根因)。

## 修复方式
回调幂等键 + 订单状态机校验(示例)。

## 回归重点
支付回调、订单状态同步、MQ 消费、支付流水一致性。

## 风险等级
P0

## 关联模块
优惠券、库存、退款

自检清单: ☐ 是否有「触发条件」和「回归重点」(不能只有现象描述)☐ 风险等级是否标注 P0/P1/P2 ☐ 是否写了关联模块(便于 AI 扩回归范围)

模块 2:业务规则库

AI 默认懂通用测试知识,但不懂你们公司的业务规则。规则库让 AI 生成用例、分析 Bug、输出回归范围时不乱猜。

标准字段: 业务模块 | 规则说明 | 前置条件 | 异常情况 | 关联模块 | 测试关注点

# 订单取消规则

## 业务模块
订单中心

## 规则说明
待支付订单允许用户主动取消。

## 取消后处理
- 订单状态变为已取消
- 库存需要释放
- 已锁定优惠券需要返还
- 支付入口应失效

## 前置条件
订单状态 = 待支付

## 异常情况
重复取消、取消后仍能支付、取消后库存未释放

## 关联模块
库存、优惠券、支付

## 测试关注点
重复取消、取消后支付、取消后库存释放、优惠券返还

模块 3:接口异常库

沉淀常见接口异常场景,AI 生成接口用例或分析接口 Bug 时自动补异常流。常见异常类型可作检查清单:参数为空 | 参数类型错误 | 参数越界 | Token 失效 | 权限不足 | 重复请求 | 请求超时 | SQL 注入 | 非法状态流转

# 下单接口异常规则

## 接口
POST /api/order/create

## 必测异常
- sku_id 为空 / 不存在
- 数量为 0 / 负数
- 库存不足
- Token 失效
- 重复提交
- 优惠券不可用

## 高风险异常
重复提交、库存不足、优惠券不可用

## 期望行为摘要
重复提交:返回业务码或幂等,不得重复扣款/重复下单

模块 4:日志规律库

让 AI 从「看到报错」升级为「判断排查方向」:

# 常见日志异常规律

## duplicate key
- 常见原因:重复提交、幂等失败、MQ 重复消费
- 排查方向:唯一索引字段、请求重复记录、MQ 消费日志

## lock wait timeout
- 常见原因:事务未释放、并发更新同一数据
- 排查方向:订单表锁等待、事务提交、并发请求记录

## connection refused
- 常见原因:下游未启动、网络异常、地址配置错误
- 排查方向:服务状态、配置地址、网络连通性

## callback failed / duplicate payment(支付域)
- 关联:支付回调、幂等、订单状态

模块 5:SQL 经验库

不是让 AI 替 DBA 调优,而是让测试人提前识别数据层风险:

# SQL 风险规则

## select *
- 风险:返回字段过多,增加 IO 和网络传输
- 建议:只查必要字段

## like '%关键词%'
- 风险:前置通配符可能导致索引失效
- 建议:避免前置模糊;必要时走搜索方案

## limit 深分页
- 风险:limit 100000,20 需跳过大量行
- 建议:基于 id 或时间的游标分页

## 支付/订单常用表(按项目填写)
- 订单表:t_order(status, pay_status, user_id)
- 支付流水:t_payment(order_id, pay_status, channel)

模块 6:压测经验库

# 支付压测常见问题

## 高频问题
- 支付接口 RT 升高
- 数据库连接池耗尽
- MQ 消息堆积
- Redis timeout
- CPU 飙升

## 监控关注
TPS、RT、错误率、CPU、内存、DB 连接数、MQ 积压

## 压测后回归建议
订单状态、支付流水、库存、优惠券状态、退款链路

模块 7:回归规则库

解决「改了这里,到底要测哪里」:

# 支付模块回归规则

## 支付回调逻辑改动
必须回归:
- 支付成功 / 失败 / 重复回调
- 订单状态、支付流水
- 库存、优惠券、退款链路

## 支付方式新增
必须回归:
- 支付入口、支付渠道、支付状态
- 支付流水、订单状态

## 关联历史 Bug(可填链接或标题)
- 支付成功但订单未支付(P0)
- 重复扣款(P0)

知识库如何喂给 AI:三种落地方式

知识库写完不算完,必须能被 AI 稳定调用。先看不同场景该调哪些模块:

场景
应调用的知识库模块
用例生成
业务规则 + 接口异常 + 历史 Bug
Bug 分析
历史 Bug + 日志规律 + SQL 经验
日志排查
日志规律
SQL 分析
SQL 经验
回归建议
回归规则 + 历史 Bug

方式 A:长 Prompt 手动粘贴(最快上手)

把相关 Markdown 片段粘贴进 Prompt 的【知识库】区块,适合个人练习、单次任务:

你是企业级测试助手。根据【版本改动】和【知识库】输出回归范围。

【版本改动】
优化支付回调逻辑,修复重复回调问题。

【知识库 - 回归规则】
(粘贴 regression_rules/支付模块回归规则.md 全文)

【知识库 - 历史 Bug】
(粘贴相关 2~3 条历史 Bug 摘要)

【输出要求】
1. 必须回归项(列表)
2. 建议回归项(列表)
3. 关联历史 Bug(标题 + 为何相关)
4. 风险等级说明
禁止只回答「测支付成功失败」

方式 B:Cursor Rules / Skill 引用目录(团队推荐)

将 AI_Test_Knowledge_Base/ 放在项目内,在 Skill 或 .cursor/rules 中写明执行任务前必须先读取对应子目录:

---
description: 企业级 AI 测试知识库引用规则
globs: [「**/*」]
---

执行以下任务前,必须读取 AI_Test_Knowledge_Base 中相关文件:
- 用例生成 → business_rules/, api_exceptions/, historical_bugs/
- Bug 分析 → historical_bugs/, log_patterns/, sql_experience/
- 回归建议 → regression_rules/, historical_bugs/

方式 C:RAG / 向量检索(规模化)

当单模块文档超过几十份时,可把 Markdown 切块入库(如飞书知识库 + 企业 Bot、或本地 Chroma)。切块原则:按「一条 Bug / 一条规则」切块,保留标题与模块名在 metadata 中,检索准确率更高。

调用质量自检:用同一问题「支付模块改动要回归什么?」试三次,若三次输出都包含知识库里的特有名词(如你们历史上的「重复扣款」「MQ 重复消费」),说明喂对了。若每次都是泛泛三条,说明知识库未生效或未粘贴到上下文。

常见错误与自检清单

错误做法
正确做法
所有文档堆在一个文件夹
七大模块分目录,文件名含模块名
只存 PRD,不沉淀测试经验
从 Bug 复盘、回归会议提炼条目
Bug 只有标题
必填触发条件、影响模块、回归重点
业务规则大段散文
用 ## 小标题 + 列表,字段固定
半年不更新
每个版本发布后更新 regression_rules + 新 P0 Bug

⚠️ 记住:知识库不是越多越好,而是越结构化、越真实、越可复用越好。宁可 5 条满字段的 Bug,不要 50 条只有标题的流水账。

实战练习:搭建支付模块最小知识库

目标: 在 90 分钟内完成可演示的最小集,能支撑一次「支付回调改动 → 回归建议」的 AI 问答。

任务清单:

  1. 创建第三节目录骨架
  2. historical_bugs:至少 3 条(重复扣款、订单未支付、支付流水不一致)
  3. business_rules:支付成功/失败后的订单与库存规则
  4. api_exceptions:支付/下单相关必测异常 ≥ 8 条
  5. log_patterns:callback failed、duplicate payment、mq retry
  6. sql_experience:支付流水表、订单状态查询与索引注意点
  7. performance_experience:高并发支付、MQ 堆积、连接池
  8. regression_rules:支付回调改动 + 支付方式新增的必回归项
  9. 用 5.1 节 Prompt 跑通一次,对照自检清单改 Prompt

参考关键词(无真实项目时可先用):历史 Bug:重复扣款、订单未支付、支付流水不一致;业务规则:支付成功后订单状态更新、支付失败不得扣库存;接口异常:重复回调、Token 失效、金额篡改;日志:callback failed、duplicate payment、mq retry;SQL:支付流水表查询、订单 status 索引;压测:高并发支付、MQ 堆积、连接池耗尽;回归:支付、订单、库存、优惠券、退款链路。

验收标准: 向 AI 提问「支付回调逻辑改了,要回归哪里?」合格回答应同时满足:列出 ≥ 6 个具体回归点(含订单、流水、库存等);提及至少 1 条你们知识库里的历史 Bug 或风险描述;区分「必须回归」与「建议回归」(若 Prompt 有要求)。

小结与下一步

企业级 AI 测试助手强度 ∝ 测试知识库完整度。回顾核心要点:

  • 定位
    :知识库是 AI 的「项目记忆」,不是文档仓库
  • 结构
    :先建目录,再按固定字段填七大模块
  • 调用
    :粘贴 Prompt / Cursor Rules / RAG 三选一,务必做调用自检
  • 运营
    :随版本与 Bug 闭环持续更新,尤其回归规则与 P0 Bug

接下来可以: ① 完成第七节支付模块练习;② 把 5.1 回归 Prompt 存为团队模板;③ 与六大能力 Prompt 组合,形成「知识库 + 能力入口」的完整助手。后续可接入 Cursor Skill 实现自动读库。

知识库越强,AI 助手越像团队里的老测试。搭建知识库不是「存文档」,是「存经验」;不是「给 AI 喂资料」,是「给 AI 装脑子」。

动手建起来吧~

以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~

谢谢你看我的文章,我们,下次再见。