我用AI写自动化测试脚本一周后,同事以为我偷偷请了个外援

简介: 一位测试工程师用AI打造自动化测试“流水线”:从让AI生成pytest脚本、设计测试用例,到接入知识库实现业务感知,再到构建测试智能体。一周内效率提升3–4倍,边界覆盖增30%,告别加班写脚本。真实实践,无外包,只有会思考的AI助手。

上周五的站会,我汇报完工作进度,旁边的老张凑过来压低声音问:“老实交代,是不是偷偷请了外包?或者……挖了个字节的测开大神在家远程帮你写脚本?”

我愣了一下,然后笑了。

这一周,我所在的团队正好遇上版本迭代高峰期,按往常节奏,光是把核心业务的回归测试脚本写完,至少得磨蹭三四天。但这周我不仅搞定了脚本,还有时间准点下班接孩子。老张的怀疑,我懂——毕竟就在一周前,我还跟他一起吐槽过自动化测试的种种破事。

这变化的秘密,其实不是什么外包大神,而是我自己用AI搭的一套测试脚本生成“流水线”。准确说,是AI辅助测试开发。今天把这周折腾的一点心得写出来,也许能帮到同样被脚本折磨的你。

一、一切始于那个写脚本写到吐的深夜
先交代下背景。我所在的团队,测试覆盖要求高,每次版本更新,接口自动化脚本必须同步更新。我们用的是Python + pytest框架,按说挺主流的,但痛点一直没解决:

用例设计全靠人肉:对着接口文档,一个个字段想边界值,脑袋想秃
数据准备烦得要死:注册接口要测用户名重复,我得先去数据库插一条;测手机号格式,得现造各种奇葩号段
代码重复劳动:参数化用例写起来跟复制粘贴似的,改个字段名得全局替换
上周二晚上,我在工位上对着一个要测12种组合的接口发呆,心想:这种重复劳动,凭什么不能交给AI干?

于是,我开始了为期一周的“AI辅助测试开发”实验。

二、第一阶段:让AI帮我写测试代码(从0到1)
最开始的想法很简单——把自然语言变成测试代码。

我的工具是DeepSeek(也有用ChatGPT的同事,看个人习惯)。第一次尝试,我给了它这样一段提示:

“用pytest写一个用户注册接口的测试脚本,接口地址/api/register,POST方法,要测正常注册、用户名重复、邮箱格式错误、密码太短、必填字段缺失这几种情况,用参数化实现。”

十来秒,它就吐出了一段代码。我复制到PyCharm里,微调一下字段名,跑起来居然全过。

import pytest
import requests

class TestUserRegister:
base_url = "http://test.env.com"

@pytest.mark.parametrize("username,email,password,expected_code,expected_msg", [
    ("testuser01", "test01@xx.com", "Pass1234", 200, "注册成功"),
    ("existing_user", "new@xx.com", "Pass1234", 400, "用户名已存在"),
    ("testuser02", "invalid-email", "Pass1234", 400, "邮箱格式错误"),
    ("testuser03", "test03@xx.com", "123", 400, "密码长度不足6位"),
    ("", "test04@xx.com", "Pass1234", 400, "用户名不能为空"),
])
def test_user_register(self, username, email, password, expected_code, expected_msg):
    url = f"{self.base_url}/api/register"
    payload = {"username": username, "email": email, "password": password}
    res = requests.post(url, json=payload)
    assert res.status_code == expected_code
    assert expected_msg in res.json().get("message", "")

那一刻的感受挺微妙:不是AI写得多完美,而是它把我最不想干的“模板代码”给干了。边界值不用自己凑,参数化的架子自动搭好,我只需要核对业务逻辑。

第一天,我用这种方式搞定了5个接口的脚本,效率大概是我手敲的3倍。

三、第二阶段:让AI当测试设计助手(从1到10)
尝到甜头后,我开始加码。

传统的自动化测试,脚本只是最后一步,前面还有测试设计。以前我要先画脑图、列用例、写excel,再转成代码。现在,我把测试设计也扔给AI。

那天测一个订单查询接口,接口文档是Swagger格式的。我把OpenAPI的json文件喂给AI,然后问:

“基于这个接口定义,帮我设计订单查询功能的测试用例,要考虑分页参数、时间范围、状态过滤、异常订单号等情况。”

AI返回了一组测试点,还按优先级排了序:

P0:正常查询全部订单
P1:分页测试(page=1, size=10;page=2;size=0)
P1:状态过滤(待支付、已支付、已取消)
P2:时间范围(跨月、跨年、开始>结束)
P2:异常订单号(不存在、含特殊字符、超长)
我挑了几个边界值让AI生成具体脚本,剩下的录进Excel,转给手工测试的同事用。那一周,手工测试的同事反馈,他们发现的几个漏测场景,AI设计的用例里其实都覆盖了——只不过开发还没实现,所以脚本跑通了,手工跑就挂了。这说明AI不是神,但它帮你兜住了不少底。

四、第三阶段:引入工作流,让AI更“懂”业务(真正的转折点)
前两个阶段虽然快,但有个问题:AI没有上下文。每次生成脚本,它都不记得刚才生成过什么,也不懂我们的业务规则。

比如我们有个业务规则:“用户当天取消订单超过3次,账号临时冻结24小时”。这种规则,光看接口文档是看不出来的。所以早期生成的脚本,最多测到状态码,测不到这么细的“状态流转”。

周三晚上,我研究了下Dify这个开源平台,试着把测试过程搭成可视化工作流。

我的设计思路是这样的:

输入层:把业务需求、接口文档、测试点用自然语言写进去
知识库层:把我们项目的OpenAPI规范、历史缺陷记录、业务规则文档传上去,让AI能检索
处理层:AI先理解需求,再查知识库,最后生成测试策略和脚本
输出层:生成pytest脚本+测试数据
举个例子。测“用户取消订单”功能时,我在输入框里写:

“测试用户取消订单,要覆盖正常取消、重复取消、超过3次后取消被限制、订单状态已发货后取消失败。”

AI先去知识库里翻业务规则,找到了“当日取消超3次冻结”那条。于是它生成的测试数据里,自动构造了这样一个用例:

{
"用例ID": "TC_Cancel_004",
"场景": "当日取消次数超限后尝试取消",
"前置": "同一用户当日已取消3次订单",
"输入": "订单号ORD004,取消操作",
"预期": "返回错误码400,提示‘取消次数已达上限,请24小时后重试’"
}
对应生成的脚本里,还加了一段前置数据准备:先调用三次取消接口,再测第四次。

那天老张看我跑这个用例,愣了:“这场景你怎么想到的?我都差点忘了这个规则。”我说:“我想不到,但AI记得。”

五、第四阶段:智能体的尝试(高阶玩法)
这周最后两天,我开始尝试更进阶的——让AI不再只是代码生成器,而是一个测试智能体。

参考了一些LangChain的案例,我试着搭了一个简单的Agent,它能做三件事:

理解任务:比如“测一下登录功能”
调用工具:比如先调GET /state接口看当前页面状态,再决定点哪个按钮、输什么数据
分析结果:如果登录失败,自动判断是密码错还是账号锁定,然后决定下一步是重试还是报bug
虽然只搭了个原型,但跑起来那个感觉挺奇妙的。我让它测一个带验证码的登录页,它第一次用“admin/123456”登录失败后,自己推理说“可能密码错误”,然后换了一套“admin/Pass1234”继续试。试了三次都失败,它居然在日志里写:“建议检查验证码识别服务是否正常。”

那一刻,我真有点理解网上那篇文章说的了:AI不是在执行脚本,而是在“思考”怎么测。

六、一周下来的几个数据
我不是那种特别喜欢讲故事的风格,还是摆几个数字吧:

脚本编写效率:按代码行数算,大概提升了3-4倍
用例覆盖率:对比我自己手写的版本,AI生成的用例在边界条件和异常场景上多覆盖了约30%
维护成本:目前还看不出来,但感觉只要及时更新知识库(接口文档、业务规则),AI生成的脚本适应能力应该比我手写强
心情变化:从周二晚上的“写吐了”变成周五下午的“这就周五了?”
当然,也不是没坑。有几次AI生成的脚本里有不存在的字段,可能是它“记混了”别的项目;还有一次它生成的SQL注入用例,直接把我本地测试环境搞挂了——所以现在我在跑之前,都会先review一遍,尤其是带写操作的那种。

七、给想入坑的同学几点建议
如果你也想试试这条路,我的几点体会供参考:

  1. 从最简单的场景开始别一上来就想搭智能体。先让AI帮你写几个参数化用例,感受一下它能干什么、不能干什么。

  2. 提示词要具体“帮我写个登录测试”和“帮我用pytest写登录接口的测试,要测密码错误、账号锁定、验证码错误,用参数化实现,断言状态码和错误信息”——后者效果明显好。AI不读心,你需要告诉它你要什么。

  3. 建立知识库很重要如果只是单次对话,AI记不住你的业务。把接口文档、业务规则、历史缺陷整理一下,让AI能检索,生成的脚本会准得多。

  4. 保持判断力AI生成的脚本,我从来不直接跑。先看一遍逻辑,确认没写删库操作(别笑,真有案例)再执行。工具再强,方向盘还得在自己手里。

写在最后
周五下午,老张还在追问我外援的事。

我把他拽到工位前,打开Dify的工作流画板,给他看那几个节点:需求解析、测试生成、脚本输出。又把聊天记录翻出来,让他看AI是怎么一步步写出那些测试用例的。

他看完沉默了几秒,然后说:“也就是说,你没请外援,你请了个AI?”

我说:“准确讲,是学会用AI给自己当外援。”

他拍拍我肩膀,走了。走几步又回头:“下周教教我?”

这大概就是我这周最大的收获——不是代码写得多快,而是发现了一种新的工作方式。以前是我写代码,机器执行;现在是我指挥AI写代码,AI执行,我review。我还是那个测试工程师,只是身后多了个不知疲倦的帮手。

也许就像那篇文章里说的:2025年,最好的测试工程师不是最快敲键盘的人,而是最会指挥AI的人。

至于老张的请求,我已经想好了——下周手把手教他。毕竟,团队整体变强了,我才有更多时间研究怎么把AI用得更好。

以上,就是一个测试工程师用AI写脚本一周的真实经历。希望对你有用。

相关文章
|
3月前
|
人工智能 测试技术
AI 写的测试用例,你敢直接用吗?这套判断方法,很多团队正在用
本文直击AI写测试用例的核心矛盾:不问“会不会写”,而聚焦“能不能用”。提出四大落地判断标准——业务贴合度、可执行性、异常覆盖力、规范一致性,帮测试工程师快速甄别AI用例价值,实现从“生成即用”到“工程化采纳”的跃升。
|
2月前
|
人工智能 自然语言处理 测试技术
2026年TestOne 接口/界面/移动自动化实测,AI脚本生成到底好不好用?亲测揭秘
作为一名干了5年的测试老司机,最近团队要替换老旧的自动化测试工具,选型这块自然落到了我头上。前后对比了几款工具,最终先锁定了TestOne,花了整整一周时间,从安装部署到日常用例执行,从界面操作到核心功能实测,全程沉浸式使用,不吹不黑,记录下最真实的使用感受,给各位同行做个参考,也算是给自己的选型工作留个复盘。毕竟做测试的都懂,选对工具能少走一半弯路,尤其是TestOne这样主打一站式自动化测试的平台,实测体验才是硬道理。
|
2月前
|
人工智能 IDE 测试技术
接口文档一丢,AI自动生成测试用例和自动化脚本?
AI IDE + MCP 正重塑软件测试:需求文档→AI自动生成测试用例与自动化脚本→CI自动执行。相比传统人工编写,它大幅提升效率;区别于知识库方案,AI IDE可操作文件、调用API、构建工程。核心前提:需求需结构化、清晰。
|
3月前
|
人工智能 自然语言处理 测试技术
Prompt Engineering 进阶:如何写出让 AI 自动生成高质量测试用例的提示词?
AI赋能测试用例设计,关键在结构化Prompt:需明确角色、业务、技术栈与约束,并融入等价类、状态图等测试方法论;要求表格化/代码化输出,辅以少样本示例和异常场景深挖。本质是将测试经验精准传递给AI。
|
3月前
|
人工智能 数据可视化 搜索推荐
AI智能体实战指南:6大工具构建你的自动化工作流引擎
本文介绍2024年六大AI智能体工具:测试自动化(Playwright/Appium)、代码生成(Cursor/OpenCode)、AI工作流(ClawdBot/Dify/n8n)、短视频创作(FFmpeg/MoviePy)等,助开发者构建端到端自动化工作流,释放创造力。
|
6月前
|
人工智能 自然语言处理 测试技术
研发、测试提效攻略:利用Apipost AI 6 大核心功能实现接口测试全流程
Apipost 通过 AI 实现接口从设计到测试的全流程自动化,支持智能提取文档、一键补全参数、自动生成用例与断言,大幅提升研发与测试效率,推动接口测试向智能化、规范化升级。
|
7月前
|
人工智能 自然语言处理 测试技术
用Dify搭建可复用的测试用例工厂
利用Dify搭建可复用的测试用例工厂,实现自然语言到测试用例的智能生成。结合大模型与测试方法论,提升用例覆盖率与编写效率,降低维护成本,推动测试开发智能化升级。关注霍格沃兹测试学院,回复「资料」获取AI测试开发技术合集。
|
2月前
|
人工智能 自然语言处理 测试技术
AI都能生成测试用例了会取代测试工程师吗?
2026年大模型普及下,生成测试用例已成基础能力。真正分水岭在于:是被动使用AI输出,还是构建工程化生成体系——涵盖需求结构化、状态建模、提示词设计与自动校验。测试工程师的核心价值正从“写用例”跃升为“设计生成系统”。
|
3月前
|
人工智能 安全 测试技术
别再手动写用例了!未来测试设计的核心是“教AI怎么思考”
本文揭示测试行业正经历一场“静默革命”:AI正替代机械写用例的体力劳动,而非测试工程师本身。核心转型在于——从“亲手写用例”升级为“教AI思考”:明确测试对象、构建测试逻辑、注入领域经验。文章详解需求规范化、任务分解、知识库增强与工具选型四大实战路径,助你成为驾驭AI的测试策略师。
|
2月前
|
机器学习/深度学习 人工智能 算法
别再只学自动化了!从平安银行招聘看2026测试岗新标准:三层架构+AI落地经验才是硬通货
本文以平安银行AI测试岗招聘为切入点,解析当前市场对AI测试的真实需求:重“落地经验”而非概念,核心是“用AI做测试”。涵盖岗位职责(智能用例生成、缺陷预测、AI自动化、智能体测试)、技术栈(三层架构+Prompt工程+AI工具链)及务实学习路径,强调测试根基与AI应用并重。

热门文章

最新文章