公司动态
放弃Selenium吧!2026年最火的AI驱动测试框架终极盘点
上个月和几个老朋友吃饭一个在大厂带测试团队的说了一句话桌上安静了五秒。他说他们团队现在招人简历上写“精通Selenium”的已经不加分了。不是Selenium不好。是2026年的测试已经不在那个维度上了。AI写代码的速度早就超过了人类维护测试脚本的速度。Cursor和Claude Code一个下午就能重构掉你整个前端目录你辛辛苦苦维护的几百条XPath一夜之间全部失效。这不是危言耸听。Meta最近公布了一组数据他们用即时测试方法在代码评审期间动态生成测试bug检出率提升了4倍。Slack工程团队直接把AI智能体塞进了端到端测试流程测试用例只描述目标不写操作步骤。很多人已经开始感觉到——以前那套“写脚本-跑脚本-修脚本”的循环跑不动了。目录一、现象Selenium的维护成本正在吃掉你的交付速度二、本质变化从“告诉工具怎么做”到“告诉AI要什么”三、核心机制拆解AI测试框架到底怎么工作的四、典型案例对比三套框架三种打法五、工程落地启示你现在能做什么六、最后问一个问题一、现象Selenium的维护成本正在吃掉你的交付速度先看几个数字。Selenium仍是目前使用最广泛的端到端测试工具。但2026年的现实是测试套件长期维护成本占比超过60%。超过一半的测试开销在修不在测。问题出在哪Selenium的定位机制本质上是“坐标思维”用CSS选择器或XPath去锁定页面上的某个元素。按钮换了个class测试就挂了。页面加了个wrapper div测试又挂了。更麻烦的是2026年的UI迭代速度跟2004年完全不是一回事。Selenium诞生那年一个页面改一次可能要两周。现在Cursor或Claude Code改一个组件几分钟的事。你的测试脚本根本跟不上。结果就是CI上30%的失败是flaky测试不是真正的bug。工程师开始无视测试结果——一旦开始无视bug就开始往外冒。这不是工具的问题。这是工具的前提假设被打破了。二、本质变化从“告诉工具怎么做”到“告诉AI要什么”传统自动化测试的核心是“指令”——告诉工具每一步具体怎么操作。点击哪个按钮、输入什么内容、等待什么元素出现。AI驱动的测试框架核心是“意图”——告诉系统你要达成什么目标它自己想办法。这个区别不是语言层面的是架构层面的。传统框架的核心是执行引擎。它接收的是确定性的操作序列按顺序执行遇到变化就崩溃。AI框架的核心是决策引擎执行引擎的组合。LLM负责理解意图、规划路径、处理异常执行层负责把规划变成实际操作。本质上是把“测试脚本”从步骤列表变成了目标描述约束条件。举个例子。Selenium写法driver.findElement(By.id(“submit-btn”)).click();driver.findElement(By.name(“email”)).sendKeys(“testexample.com”);AI框架写法以Karate Agent为例click(‘{button}Submit’)定位依据是用户看到的文字“Submit”不是DOM里的id或class。class改了、结构调了测试照跑。这不是语法糖是改变了测试和UI之间的耦合方式——从结构耦合变成了语义耦合。三、核心机制拆解AI测试框架到底怎么工作的2026年的AI测试框架主流架构可以抽象成三层。意图层接收的是“做什么”不是“怎么做”。可以是自然语言、需求文档、Figma原型甚至用户会话日志。这一层的价值在于抽象层次。传统测试脚本的抽象层次是“操作”AI框架的抽象层次是“业务目标”。抽象层次越高对UI变化的容忍度越大。决策层这是AI框架的核心差异所在。LLM拿到意图后不是直接生成代码就完事了。它需要理解当前页面状态DOM结构或视觉信息规划达到目标的操作路径每一步执行后验证状态决定下一步遇到异常时动态调整策略这里面有个关键设计选择用DOM还是用截图。截图方案如Anthropic的computer useLLM看整个浏览器截图推理出要点击的坐标。优点是通用性强缺点是一个操作消耗上万token。DOM方案如Karate AgentLLM接收结构化DOM摘要——元素、角色、标签、状态。模型返回意图执行层解析成具体操作。token消耗是截图方案的十分之一到五十分之一。两种方案没有绝对优劣。截图方案适合UI高度定制、DOM不可靠的场景DOM方案适合追求效率和成本的场景。执行层决策层输出的不是直接的操作指令而是意图参数。执行层负责把意图变成真实的浏览器操作、API调用或移动端交互。执行层还有一个重要功能证据录制。每一步的截图、操作日志、决策依据都要保留方便出问题时回溯。这个闭环是AI框架和传统框架最根本的区别。传统框架是开环的——脚本怎么写就怎么跑跑不通就失败。AI框架是闭环的——跑不通就自己想办法。四、典型案例对比三套框架三种打法2026年的AI测试框架市场不是一个赢家通吃的局面。不同框架解决不同的问题。Karate AgentAI原生的Selenium替代品定位最明确用AI解决定位器维护问题。核心机制是“显示文本定位LLM故障恢复”。正常路径下用文本定位零token消耗速度跟Selenium一样快。只有定位失败时才调用LLM分析页面、恢复流程。关键设计LLM是备用方案不是默认方案。这保证了成本和速度可控。适合场景有大量现有Selenium测试、被定位器维护折磨的团队。Midscene.js视觉驱动的跨平台方案字节跳动开源核心理念是用自然语言描述目标AI完成操作。跟Karate Agent的区别在于视觉优先。Midscene用多模态模型理解界面不依赖DOM。这意味着它可以在canvas、移动端、桌面端等DOM不可用的场景工作。适合场景跨平台UI测试、canvas应用、移动端自动化。QA WolfAgentic自动化测试平台输出的是可审查、可入库、可在CI里稳定执行的Playwright代码。QA Wolf用多个专门的AI agent分工协作有的识别业务流程有的生成测试代码有的诊断失败原因并更新测试。关键区别它不是“运行时靠AI动态执行”而是“用AI生成确定性代码然后在CI里确定性执行”。适合场景需要代码审计、版本管理、CI集成的团队。怎么选这不是一个“哪个最好”的问题。这是一个“你的约束条件是什么”的问题。如果你的痛点是维护成本选Karate Agent这类“传统框架AI增强”如果你的痛点是跨平台适配选Midscene.js这类“视觉驱动”如果你的痛点是测试生成效率选QA Wolf这类“Agentic自动化”如果你的痛点是视觉回归选Applitools这类“视觉AI测试”五、工程落地启示你现在能做什么说几个实在的建议。别急着全量替换Slack工程团队的做法值得参考确定性测试继续跑AI智能体测试用在端到端层。前者保证核心业务逻辑的快速、可复现验证后者解决界面变更带来的测试脆弱问题。先把最痛苦的几条流程切过去跑通了再扩大。关注架构不只是工具2026年的主流开源方案普遍采用“可编程测试运行时”PRT作为执行引擎。Apache OpenTAP 3.0已经把测试步骤抽象为可插拔的Action Node。这意味着什么测试正在从“脚本编写”变成“架构设计”。你不需要学会所有AI测试框架的API。你需要理解的是意图如何表达、决策如何闭环、执行如何验证。重新审视你的测试数据AI测试框架的决策质量高度依赖上下文信息的质量。DOM摘要是否完整、页面状态是否可观测、业务规则是否可描述——这些比“会不会用某个工具”更重要。关注可观测性AI智能体驱动的测试执行路径是不确定的。如果出了问题你不知道它当时看到了什么、做了什么决策你就没法排查。结构化执行日志、每一步的截图和决策记录不是可选项是必选项。六、最后问一个问题上面聊了这么多核心其实就一句话你的测试体系是面向“稳定UI”设计的还是面向“持续变化”设计的如果今天你的前端团队全面接入AI编码助手UI迭代速度翻三倍你现在的测试套件能撑多久一周一个月还是第一天就崩了这个问题没有标准答案。但值得你现在就想清楚。毕竟等到CI全线飘红的时候再想就晚了。本文部分内容参考了霍格沃兹测试开发学社整理的相关技术资料主要涉及软件测试、自动化测试、测试开发及 AI 测试等内容侧重测试实践、工具应用与工程经验整理。