“编程第三时代“,测试人该怎么接招
前言2026年6月Cursor CEO Michael Truell在一次访谈中抛出一个判断AI编程正在进入“第三时代”——云端智能体不再只是补全代码的助手而是具备自主规划、编码、调试乃至交付能力的“数字工程师”。与此同时《2026春季Cursor开发者习惯报告》给出了一组数据当前已有约35%的生产代码由AI自主生成这个比例还在以每季度5-8个百分点的速度爬坡。这件事对开发者的冲击已经讨论得够多了。但站在测试的角度问题更加尖锐——当你要验证的代码有三分之一甚至更多不是人写的传统的测试逻辑还成立吗介入时机、验证策略、工具链该怎么跟着变这篇文章试图回答这些问题。不讲概念讲实操。目录一、三个时代测试侧到底变了什么 二、AI生成代码的“质量画像”哪些地方容易出事 三、测试介入时机的前移从“写完再测”到“生成即验证” 四、意图驱动 vs 脚本驱动测试范式的切换 五、持续测试架构的重新设计 六、测试人的能力迁移路线一、三个时代测试侧到底变了什么Michael Truell划分的三个时代翻译成测试人能理解的话第一时代Tab补全时代AI帮开发者补全几行代码本质上还是人在写。测试侧几乎不受影响该怎么测还怎么测。第二时代对话协作时代开发者用自然语言跟AI对话生成函数甚至模块。测试开始遇到新问题——生成代码的风格不统一、边界处理参差不齐但整体还在可控范围内。第三时代智能体自主时代AI Agent拿到一个需求描述能自主完成从架构设计到代码实现再到基础调试的全流程。这才是真正改变游戏规则的阶段。第三时代对测试的根本冲击在于代码的生产速度和生产方式同时变了。以前一个五人开发团队一个迭代产出大约2000-3000行有效代码两个测试工程师跟得住。现在同样的团队借助Claude Code、Cursor Agent、Devin这类工具同样周期的代码产出量可以翻到8000-12000行。更关键的是这些代码不是一个人风格一致地写出来的而是不同prompt、不同上下文下AI分别生成的“拼接体”。测试侧如果还是老节奏——等开发提测拿到代码写用例执行——根本跟不上。二、AI生成代码的“质量画像”哪些地方容易出事跟AI生成代码打了大半年交道后我总结了一份“高频翻车清单”测试人重点盯这几个方向1. 边界条件处理普遍偏弱。AI生成的代码在“主干路径”上通常没问题但空值、极端输入、并发场景下的防御性代码经常缺失。举个例子让Agent生成一个分页查询接口正常传参没毛病但pageSize传0或传负数大概率没做处理。2. 安全相关的代码容易“看起来对”。SQL拼接、XSS过滤、权限校验这些AI生成的代码往往形式上做了但实际存在绕过路径。2026年Q1 Snyk的报告显示AI生成代码中的安全漏洞检出率比人工代码高出22%其中大部分是“不完整的防御”。3. 模块间的集成缝隙。单个函数、单个类层面AI写得不错。但当多个Agent分别生成不同模块拼到一起时接口契约、数据格式、异常传播链上的问题会集中爆发。这跟多人协作开发的集成问题类似但频率更高因为各个Agent之间没有“口头沟通”的机会。4. 非功能性需求几乎全靠人兜底。性能、可观测性、容错降级这些除非prompt里明确要求AI基本不会主动考虑。生成的代码能跑通但扛不扛得住压力是另一回事。三、测试介入时机的前移从“写完再测”到“生成即验证”传统测试流程里测试介入的最早节点通常是“开发提测”。但在第三时代这个节点太晚了。道理很简单AI Agent一个下午能生成十几个模块如果等全部写完再测返工成本极高。更合理的做法是把验证逻辑嵌入到代码生成的pipeline里让每一次生成都伴随即时校验。下面这张图展示了测试介入时机从传统模式到新模式的变化核心变化就一句话质量验证不再是一个“阶段”而是代码生成pipeline里的一个“中间件”。实操层面目前比较成熟的做法是在CI/CD中配置“AI代码质量门禁”每次Agent提交的PR自动触发静态分析SonarQube/Semgrep、契约测试Pact、边界值FuzzAtheris/Jazzer、AI生成的补充用例借助Claude或GPT做测试生成。通不过门禁的代码直接打回不需要人工介入。四、意图驱动 vs 脚本驱动测试范式的切换过去十年自动化测试的主流范式是“脚本驱动”——测试工程师把测试逻辑写成Selenium、Appium、Pytest脚本CI里定时跑。这套体系跑了很多年但有个根本问题脚本的维护成本跟UI/接口的变更频率强耦合。在第三时代这个问题被放大了。AI Agent可能一天重构三次接口每次改动都合理但你的测试脚本全废了。更适应当前节奏的做法是意图驱动测试Intent-Driven Testing。简单说测试人员不再写具体的操作步骤和断言脚本而是描述“测试意图”# 脚本驱动传统def test_login():driver.find_element(By.ID, username).send_keys(admin)driver.find_element(By.ID, password).send_keys(123456)driver.find_element(By.ID, btn-login).click()assert driver.find_element(By.CLASS_NAME, welcome).text 欢迎回来# 意图驱动第三时代test_intent:场景: 用户使用正确的账号密码登录系统预期: 登录成功展示欢迎信息边界: 密码错误时提示账号或密码错误连续5次锁定账户意图描述交给测试Agent比如Momentic、Carbonate、或基于Claude Agent自建的测试执行器由Agent自己去理解当前页面结构、定位元素、执行操作、校验结果。页面改版了Agent自己适应测试意图不用改。这不是科幻。2026年上半年Momentic和Carbonate已经在多家企业落地实际维护成本下降了60%以上。但需要说清楚意图驱动不是万能的复杂的业务逻辑校验、精确的数值计算验证目前还是得靠传统脚本兜底。两种范式会长期共存。五、持续测试架构的重新设计把前面几节的思路串起来一个适配第三时代的持续测试架构大致长这样这套架构的几个关键设计决策测试生成前置到需求阶段。需求进来的同时测试Agent就开始拆解测试意图、生成验收标准。不等代码写完再想“测什么”。质量门禁做成“硬卡点”。不是跑完给个报告让人看而是直接拦截。门禁不通过代码回到AI Agent自动修复形成闭环。人只在Agent修不好的时候介入。变异测试作为AI代码的“试金石”。传统的行覆盖率、分支覆盖率对AI生成代码意义不大——AI生成的测试很擅长“刷覆盖率”但不一定真的在检验逻辑。变异测试Mutation Testing通过故意篡改代码看测试能不能抓到是目前验证测试有效性最靠谱的手段。可观测性兜底。再好的测试也不可能覆盖所有场景。线上通过OpenTelemetry做全链路追踪异常数据回流到测试用例库形成持续补充机制。六、测试人的能力迁移路线说到底工具和架构都是手段人的能力才是根本。第三时代的测试人需要在三个方向上做能力迁移从“写脚本”到“定策略”。具体的测试脚本越来越多由AI生成测试人员的核心价值转向制定测试策略、设计质量门禁规则、定义验收标准。说白了从“动手干活的人”变成“定规矩的人”。从“找Bug”到“防Bug”。与其在下游捞缺陷不如在上游设关卡。理解AI生成代码的缺陷模式把这些模式转化成自动化检测规则嵌入到生成pipeline里。这需要对SAST/DAST工具链有深入理解对常见漏洞模式有系统认知。从“测试工程师”到“质量工程师”。这个说法不新但第三时代赋予了它真正的含义。质量工程师关注的不是“这个功能有没有Bug”而是“整个AI辅助研发流程的质量保障体系是否健壮”。你需要懂CI/CD、懂可观测性、懂AI Agent的能力边界甚至需要能写prompt来调优测试生成Agent的输出质量。一个具体的能力自查清单能力项传统要求第三时代要求用例设计等价类/边界值/场景法意图描述 AI生成用例的审查能力自动化Selenium/Appium/Pytest测试Agent配置 质量门禁编排工具链Jira TestRailCI/CD pipeline 可观测性平台核心产出测试报告质量度量体系 门禁规则集与开发协作提Bug → 跟进修复共同维护AI Agent的质量约束写在最后“第三时代”不是终点它只是一个加速的起点。AI生成代码的比例会继续涨从35%到50%到更高。测试人面对的不是“要不要变”的问题而是“变多快”的问题。好消息是越是AI大规模生成代码的时代对质量保障的要求越高而不是越低。代码可以由机器写但“这段代码该不该上线”的判断权在相当长的时间里还得握在人手上。关键是别等着被推着走。现在就开始熟悉意图驱动测试工具现在就去研究变异测试和质量门禁的落地方案现在就去理解AI Agent的能力边界和典型缺陷模式。机会永远留给提前上桌的人。

相关新闻

OpenClaw与飞书集成:低代码自动化实践指南

OpenClaw与飞书集成:低代码自动化实践指南

1. 为什么选择OpenClaw与飞书集成?在数字化转型浪潮下,企业IM工具与业务系统的深度整合已成为刚需。飞书作为字节跳动推出的协同办公平台,其开放API生态与OpenClaw这款轻量级自动化工具的结合,能够实现诸如:会议室预定…

2026/10/17 3:54:30 阅读更多 →
从零构建高性能C++ Profiler:低开销采样与线程本地存储实战

从零构建高性能C++ Profiler:低开销采样与线程本地存储实战

1. 项目概述:为什么我们需要自己造一个Profiler?在C的世界里,性能就是硬通货。无论是高频交易系统、游戏引擎,还是实时音视频处理,毫秒甚至微秒级的延迟都至关重要。我们经常用各种现成的性能剖析工具,比如…

2026/10/16 8:55:52 阅读更多 →
Dockerfile核心指令与容器化构建最佳实践

Dockerfile核心指令与容器化构建最佳实践

1. Dockerfile基础概念解析Dockerfile是Docker生态中的核心构建脚本,本质上是一个纯文本文件,包含了一系列用于自动化构建Docker镜像的指令。这个看似简单的文本文件实际上承载着容器化应用从代码到可运行实例的完整构建逻辑。在实际开发中,我…

2026/10/17 3:57:41 阅读更多 →

最新新闻

LabVIEW与VisionPro集成实战:从.NET直调到C#中间层方案

LabVIEW与VisionPro集成实战:从.NET直调到C#中间层方案

搞机器视觉集成这些年,"用LabVIEW做流程控制、拿VisionPro干算法活"的组合,我在不止一个项目里见过。LabVIEW 2020的图形化开发环境做交互界面、运动控制和数据流逻辑确实顺手,但真要处理复杂的视觉检测、精密定位、多模板匹配&…

2026/10/18 5:40:42 阅读更多 →
【基于 Swoole+Hyperf 的微服务实战】第十一周·周二:构建异步日志采集与分析系统

【基于 Swoole+Hyperf 的微服务实战】第十一周·周二:构建异步日志采集与分析系统

【基于 SwooleHyperf 的微服务实战】第十一周周二:构建异步日志采集与分析系统今天我们进入第十一周周二,继续构建异步日志采集与分析系统。昨天我们实现了日志接收服务,将日志投递到 Kafka。今天要打造系统的消费与存储能力:编写…

2026/10/18 5:40:42 阅读更多 →
nuScenes数据集深入解析:多模态自动驾驶数据读取与坐标系变换

nuScenes数据集深入解析:多模态自动驾驶数据读取与坐标系变换

简介:面向自动驾驶研究与开发者,这份代码包围绕nuScenes数据集的下载、安装与可视化分析展开,完整梳理了1000个复杂场景、40万关键帧、140万相机图、1400万3D标注框以及多传感器配置和23类目标对象的处理逻辑,可帮助中高级算法工程…

2026/10/18 5:40:42 阅读更多 →
LabelImg 目标检测标注工具安装使用与VOC转YOLO实战

LabelImg 目标检测标注工具安装使用与VOC转YOLO实战

简介:LabelImg 是一款基于 Python Qt 开发的开源目标检测标注工具,本教程 PDF 面向机器学习初学者、算法工程师及数据标注人员,旨在解决目标检测任务中训练数据难以快速准备的问题。文档从环境要求讲起,给出使用清华源安装 label…

2026/10/18 5:40:42 阅读更多 →
x64dbg字符串搜索:逆向调试中的精准定位与实战技巧

x64dbg字符串搜索:逆向调试中的精准定位与实战技巧

做逆向调试,拿到一个陌生程序,很多人的第一反应是跟API、翻反汇编,绕来绕去半小时找不到北。我的习惯恰恰相反——先搜字符串。字符串是程序跟用户“说话”的痕迹,也是开发者留在代码里的路标。x64dbg里的字符串搜索功能&#xff…

2026/10/18 5:40:42 阅读更多 →
栈实现综合计算器:双栈分工与优先级处理详解

栈实现综合计算器:双栈分工与优先级处理详解

栈这个结构,很多人学的时候觉得简单,不就是后进先出嘛,拿个数组或者链表模拟一下,push、pop 一写就完事了。但真到了要拿它解决一个稍微像样点的问题,比如做一个能算加减乘除、带括号、还能处理多位数的计算器&#xf…

2026/10/18 5:39:42 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →