测试转大模型:从工具接入到项目提效
《测试转大模型:从工具接入到项目提效》看起来是个大话题,但真落到项目里,常常就是几个具体选择。下面我尽量按实际开发时会遇到的问题来讲。
摘要
本文概述文章目标、核心观点和实践价值。
**分类:** 职业转型
**账号:** 技术琐事
**摘要:** 从一次因幻觉导致的误报开始,聊清楚 AI 到底能替测试做什么,以及什么时候该手动介入。不整虚的,只讲踩过的坑和实际收益。
<div style="border-bottom: 1px solid #ddd; padding-bottom: 10px; margin-bottom: 20px;">
<strong>目录</strong><br>
1. 测试岗位的新变化<br>
2. AI 辅助测试<br>
3. 自动化用例生成<br>
4. Agent 测试框架<br>
5. 质量评估<br>
6. 总结
</div>
---
测试岗位的新变化
上周在评审回归报告时,我发现了一个很有意思的现象:原本需要人工核对的三个接口返回数据格式问题,被我们新接进去的脚本全部漏报了。原因是 AI 生成的断言逻辑里,把“空字符串”和“null"判定为一致了。
这事儿让我意识到,测试转大模型,不是简单地把 Selenium 换成 Prompt,而是思维模式的根本转变。以前我们追求的是确定性,输入 A 必然输出 B;现在面对大模型,我们要处理的是概率性问题。
作为技术琐事,我见过不少同行一头扎进 Agent 开发,结果发现维护成本比写脚本还高。真正的变化在于,你的工作重心从“写脚本”变成了“定标准”。你需要定义什么是好的回答,而不仅仅是看接口通不通。比如在一个电商促销场景中,价格计算不仅要准确,还要符合业务规则的边界,这时候纯代码断言就不够用了,得让大模型去读规则文档再校验结果。
这种角色转变对学历背景要求没那么高,但对业务理解深度要求高了。如果你不懂业务逻辑,连提示词都写不对,生成的测试数据全是垃圾。
AI 辅助测试
很多人一上来就想搞全自动化的智能测试,其实大可不必。在我目前的团队里,AI 用得最多的地方其实是“查日志”和“写 SQL"。
之前排查一个偶发的下单失败问题,日志里有几千行堆栈信息。以前我得花半小时 grep,现在直接丢给本地部署的 LLM(注意数据隐私),让它定位异常根因,准确率大概能到 80% 以上。这比我瞎猜快多了。
但这有个前提:你得知道问什么。如果直接把日志扔过去,它可能只会说“看起来像网络错误”。你要学会结构化提问,比如:“分析这段日志中线程阻塞的时间点,并关联上游服务依赖。”
这里还有个坑,不要迷信云端 API。对于内部敏感数据,用开源模型本地跑虽然响应慢点,但安全合规是底线。有些公司为了省事直接调用公有云 API,结果被测系统的数据泄露风险反而增加了。这也是我第一次项目复盘里的教训。
自动化用例生成
这部分争议最大。很多厂商吹嘘能一键生成万条用例,但在实战中,效果往往打折扣。
我们试过让 AI 根据需求文档生成测试步骤,起初效率提升了三倍。但两周后,测试组抱怨说生成的用例太泛,缺乏针对性。比如生成了一条“验证用户登录成功”,但没包含密码错误的具体场景。
我的建议是:采用人机协作模式。让 AI 生成用例骨架,人类补充边界条件。比如:
import openai
from typing import List
def generate_test_cases(api_endpoint: str, method: str):
# 模拟调用模型生成用例描述
prompt = f"""
针对 {method} {api_endpoint} 接口,生成覆盖正常流程和异常流程的测试点。
重点关注参数为空、类型错误、权限不足的情况。

"""
response = openai.ChatCompletion.create(
model="gpt-3.5-turbo",
messages=[{"role": "user", "content": prompt}]
)
cases = response.choices[0].message.content
return parse_cases(cases) # 自定义解析函数
注意上面的代码,关键点在于 `parse_cases` 函数。你不能指望模型直接给你可执行的代码,它输出的往往是自然语言描述。你需要编写解析器将其转化为 pytest 的结构。这一步工作量不小,千万别小看预处理和后处理的开销。
我在一个金融项目里尝试过全量自动化,发现因为业务规则变动太快,维护这些脚本的成本甚至超过了手动执行。所以,取舍很重要:稳定模块用 AI 生成,频繁变动的模块还是靠人来把控。
Agent 测试框架
最近 LangChain 很火,我也跟进了。但实际用起来,发现“重”。如果一个简单的登录验证都要套一层 Agent 框架,那性能损耗太大了。
Agent 真正适合的场景是跨系统的复杂验证。比如要测一个“订单支付后库存扣减”的全链路,涉及订单服务、库存服务、支付网关。传统自动化很难打通这些上下文,这时候可以让 Agent 扮演“测试经理”的角色,先查询订单状态,再调用库存接口,最后通知支付回调。
但这里有个巨大的坑:死循环。Agent 有时候会陷入自我纠错的死循环,比如一直重试请求直到超时。我们在生产环境压测时发现,某个 Agent 任务占满了线程池,导致整个测试平台卡死。解决办法是加严格的超时控制和中止机制,宁可报错也不能卡住。
另外,Context Window 有限制。如果你的历史交互记录太长,模型就会遗忘前面的指令。在长周期的回归测试中,需要定期清理上下文或者分阶段执行,不能指望一个会话跑完所有流程。
质量评估
这是最难的一环。怎么证明 AI 生成的测试是好用的?
我们不能只看覆盖率,要看“有效发现率”。以前我们统计跑了多少用例,现在得统计 AI 发现了多少个真实 Bug。我们建立了一个小规模的人工标注集(Golden Set),每次 AI 运行完,拿它的结果和这个基准比对。
如果发现 AI 把“预期失败”判为“通过”,说明 Prompt 有问题,或者模型参数调整不当。这个过程叫“评估即代码”(Evaluation as Code)。
有一个经验值得分享:不要只用一个模型。我们可以用小参数量的模型快速筛选,再用大模型进行精准复核。这样既省 Token 又保精度。当然,这需要你在架构设计时就考虑到成本预算。有些小团队直接上顶级模型,一个月下来费用能抵得上两个人工资。
总结
从工具接入到项目提效,这条路没有捷径。
如果你刚准备转行,建议先从“辅助者”做起,别急着当“替代者”。先把查日志、写 SQL、生成基础用例这些事跑通,再去碰复杂的 Agent 编排。
在简历或项目展示上,别光放架构图,多放具体的对比数据:比如“引入 AI 后,回归时间缩短了 30%",“误报率降低了多少”。这才是面试官想看的东西。
最后,保持敬畏心。大模型不是神,它也会犯错。作为测试,你的核心价值依然是那个能识别出机器盲点的“人”。
我是技术琐事,下期聊聊怎么搭建私有的测试知识库。
目录
- 总结


资料展示
下面是我整理的AI大模型学习资料和工具包预览,适合收藏后按主题逐步学习。




如果你想看完整资料目录,可以在评论区留言「资料」;也欢迎告诉我你更关注AI大模型里的哪类内容。

更多推荐
所有评论(0)