AI智能体在测试自动化中的作用

发布时间:2026/6/14 6:23:02

AI智能体在测试自动化中的作用 什么是AI智能体当AI不再仅仅是回答你的问题而是能够主动采取行动并自主行事时会发生什么呢AI智能体正在改变在无需人工干预情况下人工智能所能做到的事情。但究竟什么是AI智能体呢当与 ChatGPT 或其他聊天机器人互动时提出问题它会给出回应。然而AI智能体更进一步能够自主地采取行动、做出决策或者与外部系统进行交互。AI智能体是一种能够自主工作以实现特定目标的系统。2023 年在柏林举行的 AutomationSTAR 会议上马塞尔・韦塞尔卡Marcel Veselka关于AI智能体在质量保证QA未来中所能扮演角色的阐述给了我启发。从那以后我一直在研究智能体人工智能并且这方面已经有了一些重大进展。在这篇博客文章中我想探讨一下自主型AI智能体在质量保证中可以发挥怎样的作用。为了让这篇博客聚焦于各种可能性我有意忽略了关于不在你的项目中引入AI的任何伦理、安全或其他合理的担忧 我之前的智能体工作流程演示为了展示这些自主智能体在未来质量保证中可能发挥的作用我去年创建了一个演示展示了完全自主的拉取请求pull request审查。它基本上模仿了手动测试人员会做的简化版本的工作• 首先它通过读取拉取请求或 Jira 问题的上下文来确定要运行哪些测试用例。• 然后它使用一个自主的浏览器智能体在预览环境中实际执行这些测试用例。• 最后它直接在拉取请求上报告结果。演示地址https://github.com/tlolkema/autonomous-pr-test虽然这个演示非常简化但它确实展示了在开发流程中使用自主智能体的潜力。智能体人工智能系统的现状在我完成演示后的几个月里各大AI公司都开始推出他们的智能体人工智能系统。如下一些例子• Anthropic 发布了 “计算机使用Computer use”、“模型上下文协议Model Context ProtocolMCP”最近又发布了 Claude Code。• OpenAI 发布了 Operator。• 谷歌发布了 Project Mariner。除了这些还有一些令人兴奋的开源项目比如• Browser UseOpenAI、Anthropic、谷歌 xAI 以及其他参与者都推出了他们的推理模型。其理念是推理能力越强这些模型就越能够指导AI智能体。目前2025 年 3 月控制计算机或浏览器的AI智能体的能力还尚未达到人类水平但它们能够处理的任务列表每天都在增加。OpenAI Operator“在这些基准测试中CUA在 WebArena 上实现了 58.1% 的成功率在 WebVoyager 上针对基于网络的任务实现了 87% 的成功率。虽然 CUA 在大多数任务相对简单的 WebVoyager 上取得了较高的成功率但在像 WebArena 这样更复杂的基准测试中CUA 仍需要更多改进以缩小与人类表现之间的差距。”模型上下文协议MCP智能体人工智能领域中一个令人兴奋的发展是 Anthropic 的模型上下文协议MCP。MCP 旨在对大语言模型LLM连接到各种工具的方式进行标准化。它并不局限于 Anthropic 的 Claude 模型或任何特定的大语言模型并且已经可以与广泛的工具进行通信。一个 MCP 服务器基本上是一组用于调用特定工具的指令。它们创建起来非常简单这也就解释了为什么 Anthropic 和社区已经提供了大量受支持的 MCP 服务器列表。你会发现有用于自动化工具如 Puppeteer 和 Playwright的 MCP 服务器、与 Git 交互的 MCP 服务器、连接到搜索引擎的 MCP 服务器或者与几种流行的 API 配合使用的 MCP 服务器。相关地址https://github.com/modelcontextprotocol/servers“MCP 是一种开放协议它对应用程序如何为大语言模型提供上下文进行了标准化。可以把 MCP 想象成人工智能应用程序的 USB-C 接口。就像 USB-C 为将你的设备连接到各种外围设备和配件提供了一种标准化的方式一样MCP 为将人工智能模型连接到不同的数据源和工具提供了一种标准化的方式。”让我们来看看官方的 Puppeteer MCP 服务器是什么样的 相关地址https://github.com/modelcontextprotocol/servers/blob/main/src/puppeteer/index.ts遵循 MCP 协议我们可以定义大语言模型可以调用的工具。在这个例子中是 Puppeteer 的点击click方法{name: puppeteer_click,description: Click an element on the page,inputSchema: {type: object,properties: {selector: { type: string, description: CSS selector for element to click },},required: [selector],},},一键获取完整项目代码以及这个点击方法的实现case puppeteer_click:try {await page.click(args.selector);return {content: [{type: text,text: Clicked: ${args.selector},}],isError: false,};} catch (error) {return {content: [{type: text,text: Failed to click ${args.selector}: ${(error as Error).message},}],isError: true,};}一键获取完整项目代码如你所见创建一个 MCP 服务器实际上相当简单 而且很有可能已经有人为你喜欢的工具构建了一个 MCP 服务器MCP 会成为未来的标准吗还是我们会看到更多的闭源人工智能代理占据主导地位呢这仍然悬而未决。只有时间才能证明最终哪种方法会胜出。自主测试与脚本化测试自动化自主测试会完全取代脚本化测试自动化吗我认为短期内不会。自主系统永远不会像脚本测试自动化那样快速、可重现且准确。这是因为AI智能体必须不断评估它们的行动并确定为实现目标下一步应该做什么。虽然脚本自动化遵循预定的路径具有可预测的时间安排和结果但AI智能体必须不断地处理、分析和决策 —— 这会影响速度和一致性。正因为如此预定的脚本总是能更快地实现目标并且可以完全重复执行。这些对于自动化回归测试来说是重要的因素。我预计脚本测试自动化仍将是回归测试的主要方法。然而AI智能体在一次成功的测试之后可以在自行创建这些脚本以扩展现有测试套件方面发挥重要作用。它们可以观察自己成功的测试路径并生成优化的脚本。自主型AI智能体的优势在哪里AI智能体在测试新功能时真正发挥出了优势。想象一下你刚刚构建了一个新功能立刻就有几个AI智能体行动起来。一个智能体专注于检查可访问性问题另一个测试核心功能还有一个专门查找安全问题。这比在这些领域进行手动测试要快得多并且能快速反馈哪些地方需要修复。AI智能体对于那些棘手的自动化测试领域尤其有帮助比如测试屏幕阅读器的可访问性。当页面结构不同时按照预定义的一组指令进行的围绕屏幕阅读器的自动化测试可能会失败。然而AI智能体仍然可以通过直接根据可访问性指南评估情况而不是遵循严格的测试步骤来评估这种检查是否正常工作。未来展望我认为随着越来越多的测试由AI智能体来处理质量保证工程师的角色将会发生演变。质量保证工程师将不得不确定基于智能体的测试的质量并设计将这些智能体集成到持续集成 / 持续交付CI/CD管道中的方案。在不久的将来我预计我们会看到多种测试类型并存。• 脚本测试自动化将继续处理对速度和可重复性要求最高的回归测试。• AI智能体将处理传统自动化难以应对的复杂探索性场景和边缘情况。• 随着智能体发现意外问题的能力越来越强我们可能会看到手动探索性测试的减少。感谢每一个认真阅读我文章的人作为一位过来人也是希望大家少走一些弯路如果你不想再体验一次学习时找不到资料没人解答问题坚持几天便放弃的感受的话在这里我给大家分享一些自动化测试的学习资源希望能给你前进的路上带来帮助。软件测试面试文档我们学习必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有字节大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。视频文档获取方式这份文档和视频资料对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库这个仓库也陪伴我走过了最艰难的路程希望也能帮助到你以上均可以分享点下方小卡片即可自行领取。

相关新闻