6. Agent 测试应该关注哪些风险
AI Agent 和普通大模型问答不同。普通问答主要是生成文本,Agent 会理解任务、规划步骤、调用工具、读取数据、执行动作,甚至影响外部系统。因此 Agent 测试不仅要看最终答案,还要看任务规划、工具选择、参数传递、权限控制、异常处理和执行安全。
Agent 的风险更高,因为它可能调用错误工具、传错参数、越权访问数据、重复执行操作、在工具失败后继续编造结果,甚至执行不可逆动作。测试 Agent,要把它当成“会行动的系统”来测,而不是只当聊天机器人。
一、Agent 基本流程
典型流程:
用户任务 -> 理解意图 -> 规划步骤 -> 选择工具 -> 调用工具 -> 观察结果 -> 继续决策 -> 输出结果
每一步都可能出错。
二、任务理解风险
Agent 首先要理解用户意图。
测试点:
- 是否识别正确任务;
- 是否区分查询和执行;
- 模糊任务是否澄清;
- 多意图任务是否拆解;
- 高风险任务是否二次确认;
- 无法执行时是否拒绝。
例如用户说“帮我处理这个订单”,Agent 应该澄清是查询、退款还是取消,而不是直接执行。
三、规划风险
Agent 会拆任务。
测试点:
- 步骤是否合理;
- 是否遗漏关键步骤;
- 是否顺序错误;
- 是否重复执行;
- 是否能根据工具结果调整计划;
- 是否有终止条件。
规划错误会导致后续工具调用全部偏离。
四、工具选择风险
Agent 常有多个工具:查订单、退款、发券、发邮件、查知识库、查数据库。
测试点:
- 是否选择正确工具;
- 相似工具是否混淆;
- 无合适工具时是否拒绝;
- 是否越权调用高风险工具;
- 是否调用不必要工具。
工具选择错误可能带来严重业务风险。
五、参数传递风险
工具调用时参数必须正确。
测试点:
- 参数名是否正确;
- 参数类型是否正确;
- 必填参数是否完整;
- 用户 ID、订单 ID 是否匹配;
- 金额、数量是否正确;
- 时间范围是否正确;
- 是否传入恶意参数。
Agent 生成的工具参数要可审计。
六、权限和安全风险
Agent 测试必须关注权限。
风险包括:
- 普通用户调用管理员工具;
- 查询他人订单;
- 访问无权限知识库;
- 泄露系统 Prompt;
- 泄露工具返回的敏感数据;
- Prompt 注入诱导工具调用;
- 绕过审批流程。
权限测试是 Agent 上线前重点。
七、不可逆操作风险
高风险操作包括:
- 删除数据;
- 退款;
- 转账;
- 发券;
- 修改权限;
- 发送外部消息;
- 执行命令。
这类操作需要二次确认、权限校验、审计日志和回滚方案。
测试要验证 Agent 不会在未确认情况下执行。
八、工具失败处理
工具可能失败、超时或返回异常。
测试点:
- 是否重试;
- 是否停止;
- 是否告知用户失败;
- 是否编造成功结果;
- 是否保留错误信息;
- 是否走降级流程。
Agent 最危险的问题之一是工具失败后仍然说成功。
九、多轮对话风险
多轮中要关注:
- 上下文是否混乱;
- 用户修改任务后是否更新计划;
- 是否把上一个用户数据带到当前用户;
- 长对话中是否遗忘关键约束;
- 是否被中途 Prompt 注入劫持。
十、可观测性和审计
Agent 测试需要保留执行轨迹:
- 用户输入;
- 规划步骤;
- 工具选择;
- 工具参数;
- 工具返回;
- 模型思考摘要;
- 最终输出;
- 错误和重试;
- 操作审计。
没有轨迹,很难定位 Agent 错误。
十一、面试回答模板
如果面试官问“Agent 测试应该关注哪些风险”,可以这样回答:
Agent 测试比普通大模型问答风险更高,因为它不仅生成答案,还会规划步骤并调用工具。测试时我会关注任务理解是否正确、步骤规划是否合理、工具选择是否正确、工具参数是否完整准确、权限控制是否生效、工具失败是否能正确处理,以及高风险操作是否需要二次确认。比如退款、删除数据、发券、修改权限这类不可逆操作,必须验证 Agent 不会越权执行或在未确认时执行。同时要测试 Prompt 注入、多轮上下文污染和敏感信息泄露,并保留工具调用轨迹用于审计和问题定位。
十二、常见追问
追问:Agent 和普通聊天机器人测试区别?
Agent 会调用工具和执行动作,所以要测试规划、工具调用、权限、安全和审计,不只是答案质量。
追问:工具调用失败怎么办?
Agent 应该识别失败、停止或重试,并如实告知用户,不能编造成功。
追问:如何测试越权?
用低权限账号尝试调用高权限工具、访问他人数据或敏感知识库,验证系统是否拦截。
十三、练习清单
- 设计 Agent 正常任务;
- 测试任务澄清;
- 测试工具选择;
- 测试参数错误;
- 测试工具超时;
- 测试权限越权;
- 测试高风险二次确认;
- 测试 Prompt 注入;
- 检查审计日志;
- 输出 Agent 风险报告。
Agent 测试的核心是控制风险。它越能执行真实动作,越需要严格测试权限、参数、异常和审计。
配套刷题:

