ARTICLE · 1053176
从测功能到测“记忆”:AI Agent 时代测试工程师的新战场
把一个 AI Agent 上线不难,难的是让它连续跑上几周、攒下几万条记忆之后,行为不出事。在相当长的时间里,软件测试的核心问题相对明确:功能是否按需求实现,接口是否稳定,性能是否达标,异常时系统能否正确兜底。即便进入大模型应用阶段,许多团队最初关注的仍是“AI 回答得对不对”“提示词够不够好”“模型调用成没成功”。
但随着 AI Agent 逐渐进入业务流程,这套测试思路开始显得不够用了。
今天的 AI Agent 不再只是一次性回答问题的聊天机器人。它能够调用检索、数据库、浏览器、代码执行、工单、邮件等工具,按照目标拆解任务,并在多个会话、多个任务甚至多天之后,继续引用此前积累的信息。这种跨会话、跨任务保存和调用上下文的能力,被称为 AI 记忆。长期记忆让 Agent 可以保留用户偏好、任务进度、业务规则、历史决策和经验性知识,使其从“每次对话都重新开始”的工具,逐渐成为持续参与工作的数字角色。
这也是测试工程师必须重新定义自身价值的时刻。测试对象不再只是一个功能模块、一个接口返回值,甚至不只是一次模型输出,而是一个会持续学习、持续积累状态、持续改变行为的系统。测试的目标,正在从“功能是否正确”升级为“长期行为是否可信”。
AI Agent 时代,测试工程师的新战场,正是“记忆”。
AI 记忆为何改变测试逻辑
传统软件当然也有状态。例如电商系统会记录订单,银行系统会记录账户余额,协同工具会保存文档版本。但这些状态通常有明确的数据结构、确定的业务规则和相对清晰的读写路径。测试人员可以根据需求文档构造输入,验证输出,并通过数据库、日志或接口结果确认状态是否符合预期。
AI 记忆则不同。它看似也是“存”和“取”,实际却处在语言理解、信息抽取、语义检索、模型推理与工具执行的交汇处。
举例来说,一名用户对客服 Agent 说:“我最近常出差,未来涉及报销的提醒最好提前两天。”系统可能会把这句话摘要为“用户偏好提前两天获得报销提醒”,并存入长期记忆。几周后,用户又说:“下个月这个项目的差旅规则变了,先别按照旧规则提醒。”如果 Agent 仍然错误地召回旧偏好并主动执行提醒,它表面上是“记得住”,但实际没有理解记忆的适用范围、时效边界和优先级。
更复杂的是,AI 记忆不一定以原始句子保存。它可能经历了提取、摘要、向量化、标签化、重排序和合并等多个过程。用户的一段原话,最终可能变成数据库中的一条结构化记录、一组向量索引、一个会话摘要,或者被写入供后续模型调用的上下文片段。
因此,测试工程师不能只验证“数据库有没有这条数据”,还要验证以下问题:
· 这条记忆是否应该被写入?
· 被写入的内容是否准确、完整且没有曲解?
· 后续任务是否在正确时机召回了它?
· Agent 是否区分了个人偏好、临时指令、业务规则与敏感信息?
· 当用户修改意见、撤回授权或要求删除信息时,旧记忆是否真正失效?
· 多用户、多角色、多租户共用 Agent 时,记忆是否发生泄露、混用或污染?
这意味着,AI 记忆不是简单的“增强上下文”功能,而是会直接改变系统后续行为的状态层。只要它被错误写入、错误检索或错误使用,问题就不会只发生一次,而可能在未来的每一次任务中被重复放大。
从“一次通过”到“长期可靠”
传统测试中,一个功能在测试环境通过验收,往往意味着它在相同条件下应当稳定运行。AI Agent 的记忆机制却改变了这种假设。
同一个 Agent,在上线第一天、运行一个月后、积累数万条记忆后,可能表现出完全不同的行为。原因不一定是模型变了,也可能是记忆库中的历史信息发生了变化:旧知识没有过期,低质量信息不断沉积,多个来源的内容彼此冲突,错误摘要被重复引用,或者攻击性内容被间接写入长期记忆。
这类现象可以称为“行为漂移”。它不是传统意义上的代码回归,而是 Agent 在持续运行过程中,因为记忆内容与检索结果变化,逐渐偏离原有设计目标。
例如,企业内部的研发助手最初只被允许参考经过审核的知识库和当前项目文档。但如果系统把用户随手输入的猜测、Agent 自己生成的未经验证结论,甚至外部网页中的提示注入内容,自动写入了可信记忆库,后续任务就可能把这些错误内容当作可靠事实。在这种情况下,Agent 并没有代码故障,却会在一次次“看似合理”的回答和工具调用中,稳定地产生错误。
因此,测试标准必须从“某次结果正确”转向“长期行为仍然受控”。
行业里也已经出现类似方向的探索:把评测探针嵌入 Agent 工作流,并把评估结果沉淀成可机器读取的审计轨迹,以便对 Agent 的行动和输出做持续评估(NIST 等机构在相关评测框架中提出过这类思路)。它对测试工程师的启发很直接:AI 质量保障不能只发生在发布前,还要延伸到运行时,让每一轮关键决策都留下可回放、可分析、可问责的证据链。
换句话说,未来的测试不应只问:“这次回答对了吗?”还要问:“它为什么这样回答?调用了哪些记忆?这些记忆来自哪里?系统为何认定它们仍然有效?如果结果错误,能否追溯、纠正并阻止再次发生?”
AI 记忆的六个测试重点
面对有记忆的 Agent,测试工程师需要建立比传统功能测试更系统的验证框架。以下六类问题,值得成为基础测试集。
◎ 第一,测试“该不该记”
并不是所有用户输入都应该沉淀为长期记忆。
用户临时表达的情绪、未经证实的判断、一次性任务上下文、包含敏感信息的内容,都不应被无差别保存。例如,用户说“我可能下周离职”,这可能只是情绪化表达,也可能属于高度敏感信息。若 Agent 自动将其作为稳定用户画像写入,并在后续沟通中反复引用,不仅会造成体验问题,也可能带来隐私和合规风险。
因此,测试用例应覆盖记忆写入的准入规则:
· 哪些信息可以保存为长期偏好或业务事实。
· 哪些内容只能保留在当前会话。
· 哪些内容必须经用户确认后才可保存。
· 哪些敏感字段必须脱敏、加密或拒绝存储。
· 模型推测出的结论是否被错误当作用户事实写入。
测试人员需要警惕一个常见问题:模型具有“总结”能力,不代表它具有“授权判断”能力。系统能从一句话中提取信息,不等于系统有权长期保存该信息。
◎ 第二,测试“记得是否准确”
AI 记忆通常需要经过抽取或摘要。真正的风险往往发生在这里。
原始对话可能是:“我只有在涉及境外差旅、且金额超过公司标准时,才希望收到报销风险提醒。”如果系统将其压缩成“用户希望收到报销风险提醒”,就丢失了适用范围。后续 Agent 可能对所有日常报销触发提醒,造成干扰;若压缩成“用户不需要报销提醒”,则会造成业务风险。
对此,测试工程师应建立“原始事实—记忆表达—实际行为”三层核验:
· 原始对话中的事实是什么。
· 系统写入记忆库的内容是什么。
· Agent 在后续任务中基于该记忆做出了什么行为。
仅仅检查最终回答是否顺畅是不够的。测试要能够定位错误发生在信息抽取、摘要、存储、检索,还是推理与执行阶段。只有把链路拆开,团队才能真正修复问题,而不是反复调整提示词碰运气。
◎ 第三,测试“该不该被召回”
一条记忆正确存在,不代表任何时候都应该被调用。
AI Agent 的记忆检索通常会根据当前问题的语义,从大量历史信息中找出“相关内容”。但语义相似不等于业务相关,更不等于应当优先采用。比如用户曾经偏好“简洁的日报”,后来正在咨询“如何撰写正式项目复盘报告”。如果 Agent 因为“写作风格”相似,错误地把简洁偏好套用到正式复盘中,就可能遗漏重要信息。
因此,检索测试要同时考察准确率与边界感:
· 面对明确相关的问题,是否能召回正确记忆。
· 面对表面相似、实则无关的问题,是否能避免误召回。
· 面对相互冲突的历史记忆,是否能识别更新关系和优先级。
· 面对过期信息,是否能降低其权重或拒绝使用。
· 面对高风险决策,是否会把低可信度记忆直接转化为行动。
行业对记忆 Agent 的评估已经开始关注准确检索、测试时学习、长程理解和冲突解决等能力;同时,完整执行轨迹应记录原始检索请求、被检索出的具体片段,以及最终输出或工具调用,才能分析一次记忆故障究竟发生在哪个环节。
对测试工程师而言,这意味着测试数据不能只由“标准问答对”构成,还要有大量干扰样本、时间变化样本、冲突样本和跨任务样本。好的记忆系统不只是“召回得多”,而是“在该沉默时能够沉默”。
◎ 第四,测试“会不会串忆”
在企业环境中,记忆隔离是不可妥协的底线。
一个面向多用户的 Agent,可能同时处理不同客户、不同员工、不同部门甚至不同租户的数据。如果系统只依赖语义相似度检索,却没有在身份、组织、角色、项目、权限和数据域等维度建立硬隔离,就可能出现“串忆”。
例如,用户 A 提到某客户的报价策略,用户 B 询问另一客户的合作方案。由于两个问题都涉及“报价”,系统错误检索出用户 A 的记忆并在用户 B 的回答中引用,这就是典型的数据泄露。更隐蔽的情况是,系统没有直接说出原文,却基于错误记忆推荐了不应知晓的折扣、合同条款或决策建议。
针对这类风险,测试工程师应把多租户隔离测试从传统的数据权限验证,升级为 Agent 端到端行为验证:
· 在不同用户和租户下写入相似主题但不同内容的记忆。
· 使用高度相似的提问触发检索。
· 验证系统是否只返回当前身份、当前权限和当前任务域允许访问的信息。
· 验证工具调用、会话摘要、缓存、日志和向量索引是否同样执行隔离。
· 在身份切换、权限变更、会话恢复和并发访问时重复验证。
面向 Agent 应用的安全实践也强调:应在写入前扫描并校验记忆内容,按用户、任务和领域做隔离,对低可信度条目标注来源、信任评分和衰减/过期策略,避免 Agent 自己的输出自动回流为“可信记忆”(OWASP 针对 LLM/Agent 应用的相关建议中就有这类要点)。
这说明,测试工程师不能把“记忆”单独当成功能验收项,而要把它放进身份认证、权限控制、数据治理和安全红队测试的统一体系中。
◎ 第五,测试“能不能真正忘掉”
“删除”是 AI 记忆最容易被低估的问题。
在传统业务系统中,删除一条记录通常意味着数据库字段被移除或标记失效。但在 AI Agent 系统中,一段信息可能同时存在于原始会话、摘要记录、向量索引、缓存、搜索索引、日志、训练或评测样本、下游任务状态中。用户要求“忘掉这件事”时,真正的问题不是某张表里是否少了一行数据,而是该信息是否还能在任何后续推理、检索、工具调用或展示中被重新找回。
因此,测试“遗忘”必须是端到端的。
一个合格的删除测试至少应包含:先写入指定记忆,再触发检索确认其可用;随后执行删除或撤回授权;最后通过精确提问、语义改写提问、相似问题、跨会话恢复和缓存穿透等方式,验证系统不再召回、不再引用、不再以此影响决策。对高敏感数据,还应检查审计记录是否能够证明删除任务已覆盖所有需要处理的存储层。
如果系统无法清楚说明“记忆存在哪里、如何被删除、删除后如何验证”,那么它就不能轻易宣称自己具备可靠的长期记忆能力。
◎ 第六,测试“错误能否止损和回滚”
再严谨的系统,也无法保证永远不写入错误记忆。真正成熟的能力,在于发现问题后能否快速止损。
例如,某条错误的政策解释被写入记忆库,并且已经影响数十次问答。团队需要知道:这条记忆的来源是什么,何时写入,被哪些任务调用过,是否存在衍生摘要,能否批量撤销,以及回滚后是否需要触发受影响案例的复核。
这要求 Agent 系统具备版本、来源、时间、置信度、权限标签和调用链路等元数据。测试工程师则应验证:
· 记忆条目是否有唯一标识和版本记录。
· 每次读取和写入是否留下可查询轨迹。
· 错误记忆是否可冻结、可撤销、可回滚。
· 修正后的记忆是否会覆盖或压制旧版本。
· 回滚操作是否导致其他正常记忆误删。
· 已经由错误记忆触发的高风险动作是否可追溯和处置。
测试的目标不再只是证明系统“没有问题”,而是证明系统在不可避免地出现问题时,仍然具备控制损失的能力。
测试工程师要建立什么能力
AI Agent 时代并不意味着测试工程师会被替代,恰恰相反,测试岗位的价值会从执行型验证转向系统性质量治理。
◎ 第一项能力,是设计动态测试数据。
传统测试数据往往是静态的:输入、预期输出、断言结果。AI 记忆测试数据则应体现时间和状态变化。测试人员需要构造用户偏好更新、事实冲突、规则废止、权限变化、跨会话任务衔接、错误信息注入等场景,让 Agent 经历“先记住、后修改、再检索、再纠错”的完整过程。
◎ 第二项能力,是建立可观测的评测链路。
如果系统只展示最终回答,测试人员很难判断错误根源。团队应推动产品和平台保留必要的运行轨迹:输入内容、记忆写入决策、写入结果、检索请求、候选记忆、重排序结果、最终上下文、模型输出、工具调用和执行结果。这样,测试工程师才能像排查分布式系统故障一样,定位 Agent 的决策链条。
◎ 第三项能力,是使用“评测集加回放”的方式做持续回归。
模型版本更新、检索策略调整、嵌入模型替换、提示词变更、记忆结构重构,都可能让原本稳定的行为退化。因此,应建设覆盖短期记忆、长期记忆、冲突消解、时间推理、跨会话召回、隐私隔离与删除验证的回归集。每次发布前自动运行;上线后还要定期抽取真实但脱敏的执行轨迹,由领域专家复核。
业内的记忆评测也逐步形成了覆盖多跳检索、时间记忆、知识更新和多会话召回的基准思路,并把准确性、延迟和资源消耗一起纳入衡量范围。这提示团队:评测不能只追求“答对率”,还要权衡成本、时延和系统复杂度。
◎ 第四项能力,是把安全测试融入质量测试。
过去,功能测试、安全测试、隐私测试有时由不同团队分别承担。但在 Agent 记忆场景中,这些边界变得模糊。一次不恰当的记忆写入,既是功能问题,也是安全问题;一次跨用户检索,既是权限问题,也是隐私问题;一次错误的长期召回,既可能是模型质量问题,也可能是业务合规问题。
因此,测试工程师需要主动参与提示注入、记忆投毒、跨会话泄露、越权工具调用和身份切换等对抗性测试——记忆投毒(memory poisoning)、跨会话泄露(cross-session leak)和间接提示注入,已被普遍列入 Agent 应用红队测试的重点方向。
新战场不在“替人点点点”
有人认为,AI 能自动生成测试用例、自动执行回归、自动分析日志,测试工程师的岗位空间会被压缩。这样的判断忽略了一个事实:自动化可以减少重复劳动,却无法自动替企业界定“什么是可信行为”。
当 Agent 能够记住用户、理解业务、调用工具并影响真实流程时,测试工程师需要回答的问题会更加复杂:
· 什么信息允许成为长期记忆?
· 这条记忆在什么范围内有效?
· 新信息和旧信息冲突时,谁优先?
· 系统如何证明没有把 A 的信息带给 B?
· 用户要求删除后,如何证明系统真的忘记?
· 当 Agent 根据错误记忆采取行动时,如何止损、追溯和修复?
这些问题不靠增加几条自动化脚本就能解决。它们需要对业务规则、数据边界、模型特性、系统架构、用户权益和风险成本同时具备理解力。测试工程师恰好处在需求、研发、产品、运维与用户体验之间,是最适合推动这套质量机制落地的角色之一。
未来优秀的测试工程师,可能不再只以“发现了多少缺陷”来衡量价值,而要以“是否让 AI 的长期行为可验证、可约束、可修复”来衡量价值。
从这个意义上说,AI Agent 的记忆能力并不是测试岗位的威胁,而是一次重新定义专业价值的机会。
结语
AI 的下一步竞争,不只是模型能生成多少内容、Agent 能调用多少工具,更在于它能否在长期运行中保持可靠、克制和可控。
“记住”并不难,难的是只记该记的内容;在正确的时间、面对正确的人、为了正确的任务调用它;当信息失效、错误或不该再保留时,能够及时纠正并真正遗忘。
这正是测试工程师的新战场。
从测功能到测记忆,并不只是测试范围扩大,而是测试思维的一次升级。过去,测试工程师验证的是软件是否按规则运行;未来,测试工程师还要验证 AI 是否在不断变化的上下文中,持续做出符合规则、边界与责任要求的行为。
当 AI 开始拥有记忆,测试也必须拥有面向长期行为的记忆、证据和判断力。
—推荐阅读—



