AI Agent Harness Engineering 做测试:用例生成、回归与缺陷定位

news2026/4/29 16:55:54
AI Agent Harness Engineering 全栈测试指南从用例自动生成到实时缺陷定位副标题整合 OpenAI GPT-4o/Claude 3.5 Sonnet Playwright Agent LangChain Harness CI/CD 构建企业级 AI 驱动测试中台第一部分引言与基础1.1 引人注目的标题与副标题本文主副标题已在上文给出清晰点明了核心技术栈AI Agent、Harness、LangChain、Playwright、三大核心功能用例生成、回归、缺陷定位、目标场景企业级全栈测试中台关键词覆盖 AI Agent Testing、Harness CI/CD、LangChain、Playwright、测试自动化、缺陷定位、用例生成完全符合 SEO 优化要求。1.2 摘要/引言问题陈述你是否遇到过这些让测试团队头疼的“老大难”问题用例编写效率低、覆盖率不足面对复杂 SaaS 应用、大型电商平台的几百甚至上千个核心业务流程纯手动写 UI/API 用例可能需要数周回归覆盖更是只能“挑重点”漏测导致线上事故频发回归测试维护成本高应用UI/API稍微修改比如按钮颜色换了、接口字段微调之前写的Playwright/Selenium/Appium脚本就会集体报错维护时间甚至超过了开发新功能的时间缺陷定位慢、定位难线上或CI环境出现的缺陷测试人员/开发人员往往需要翻几百行测试日志、抓几个小时的网络请求、甚至复现几十次才能找到问题根因排期一拖再拖传统CI/CD与测试的整合割裂测试阶段往往是“事后诸葛亮”只有开发提交完PR才会跑而且只能输出“通过/失败”的二元结果没有提供任何有价值的优化建议或定位信息。核心方案本文提出了一套完整的 AI Agent Harness Engineering 解决方案将大语言模型LLM的推理能力、Playwright Agent 的 UI/API 自动化执行能力、LangChain 的 Agent 编排与工具调用能力、Harness CI/CD 的持续集成部署与质量管控能力完美结合构建了一个企业级的 AI 驱动测试中台。这套方案包含三大核心模块AI 用例自动生成模块只需输入产品需求文档PRD、Figma 原型链接、API 文档Swagger/OpenAPI就能自动生成功能测试用例Gherkin 格式、UI 自动化用例Playwright Python 代码、API 自动化用例Requests Pytest 代码覆盖核心业务流程、边界条件、异常场景AI 回归测试优化与执行模块基于代码变更分析通过 Git diff Harness Code Insights 实现自动筛选需要重跑的“最小化回归用例集”减少回归测试时间 70% 以上同时使用 LLM 实时修复因 UI/API 变更导致的脚本错误降低维护成本 90% 以上AI 实时缺陷定位与报告生成模块测试失败后自动收集测试日志、网络请求、DOM 截图、错误堆栈信息交给 LLM 分析根因、定位具体代码位置通过 Harness Code Connect 实现、生成详细的缺陷报告Jira 格式直接提交到公司的缺陷管理系统。主要成果/价值读完本文并跟着步骤操作后你将能够掌握 AI Agent Harness Engineering 的核心概念与理论基础从零开始搭建一套完整的 AI 驱动测试中台自动生成功能/UI/API 测试用例覆盖率提升至 95% 以上实现最小化回归测试与脚本自动修复回归测试时间减少 70% 以上维护成本降低 90% 以上实现实时缺陷定位与自动缺陷报告生成缺陷定位时间减少 80% 以上将这套测试中台整合到 Harness CI/CD 流程中实现“左移测试”与“右移测试”的结合。文章导览本文分为四个部分共 16 个章节第一部分引言与基础介绍问题背景、核心方案、主要价值、目标读者、前置知识、文章目录第二部分核心内容深入探讨 AI Agent Harness Engineering 的核心概念、问题背景、问题描述、问题解决、环境准备、分步实现、关键代码解析第三部分验证与扩展展示最终运行结果、验证方案、性能优化与最佳实践、常见问题与解决方案、未来展望与扩展方向第四部分总结与附录总结文章核心要点、列出参考资料、提供完整的源代码链接、配置文件、数据表格等补充信息。1.3 目标读者与前置知识目标读者本文适合以下人群阅读中级软件测试工程师有一定的 Python 编程基础会写简单的 Playwright/Selenium/Appium/Requests Pytest 自动化用例但对传统测试自动化瓶颈有痛点想学习 AI 驱动的测试自动化技术前端/后端转测开/DevOps 的开发者熟悉 Git、CI/CD 流程有一定的编程基础但对测试自动化、AI Agent 不太熟悉企业级测试团队负责人/技术负责人想了解 AI 驱动测试的最新技术希望通过技术手段提升测试团队的效率与质量AI 爱好者对 AI Agent 的应用场景感兴趣想学习如何将 AI Agent 整合到实际的工程流程中。前置知识阅读本文前你需要具备以下基础知识或技能Python 编程基础熟悉 Python 的基本语法、函数、类、模块、异常处理、虚拟环境的使用推荐使用venv或condaGit 基础熟悉 Git 的基本操作commit、push、pull、diff、branch测试自动化基础会写简单的 Playwright UI 自动化用例、Requests Pytest API 自动化用例了解 Gherkin 格式的功能测试用例CI/CD 基础了解 CI/CD 的基本概念最好使用过 Harness 或 GitHub Actions、JenkinsLLM 基础了解大语言模型的基本概念最好使用过 OpenAI GPT-4o/Claude 3.5 Sonnet 的 APIAPI 文档基础了解 Swagger/OpenAPI 3.0 规范会读取 API 文档。1.4 文章目录完整的文章目录如下1. 引言与基础 1.1 引人注目的标题与副标题 1.2 摘要/引言 1.2.1 问题陈述 1.2.2 核心方案 1.2.3 主要成果/价值 1.2.4 文章导览 1.3 目标读者与前置知识 1.3.1 目标读者 1.3.2 前置知识 1.4 文章目录 2. 问题背景与动机 2.1 传统软件测试的发展历程与局限性 2.1.1 发展历程从手工测试到传统自动化测试 2.1.2 传统自动化测试的局限性效率、覆盖率、维护、定位 2.1.3 行业数据测试自动化的现状 2.2 AI 驱动测试的兴起与发展 2.2.1 什么是 AI 驱动测试 2.2.2 AI 驱动测试的核心技术LLM、Computer Vision、NLP、ML 2.2.3 AI 驱动测试的应用场景用例生成、回归、缺陷定位、性能测试 2.3 Harness CI/CD 的优势与测试整合需求 2.3.1 什么是 Harness 2.3.2 Harness CI/CD 的核心优势AI 驱动、低代码、全链路、云原生 2.3.3 传统 Harness 测试整合的局限性缺乏 AI 能力 2.4 本文的研究动机与意义 3. 核心概念与理论基础 3.1 AI Agent Harness Engineering 的核心概念 3.1.1 什么是 AI Agent 3.1.1.1 AI Agent 的定义 3.1.1.2 AI Agent 的核心要素感知层、推理层、行动层、记忆层 3.1.1.3 AI Agent 的分类单 Agent、多 Agent 3.1.2 什么是 Harness Engineering 3.1.2.1 Harness Engineering 的定义 3.1.2.2 Harness Engineering 的核心流程设计、开发、部署、运行、监控 3.1.3 什么是 AI Agent Harness Engineering 3.1.3.1 定义 3.1.3.2 核心价值 3.2 核心技术栈详解 3.2.1 大语言模型OpenAI GPT-4o vs Claude 3.5 Sonnet vs Gemini 1.5 Pro 3.2.1.1 技术指标对比token 长度、推理速度、成本、多模态能力 3.2.1.2 为什么本文选择 OpenAI GPT-4o 与 Claude 3.5 Sonnet 3.2.2 LangChainAgent 编排与工具调用 3.2.2.1 LangChain 的核心组件LLM、Prompt Template、Chain、Agent、Tool、Memory 3.2.2.2 LangChain Agents 的类型ReAct Agent、Structured Chat Agent、OpenAI Functions Agent 3.2.2.3 为什么本文选择 LangChain 3.2.3 PlaywrightUI/API 自动化执行 3.2.3.1 Playwright 的核心优势跨浏览器、跨平台、自动等待、强大的选择器、多模态能力 3.2.3.2 Playwright Agent 的定义与优势 3.2.3.3 为什么本文选择 Playwright 而不是 Selenium/Appium 3.2.4 HarnessCI/CD 与质量管控 3.2.4.1 Harness CI 的核心功能Code Insights、Pipeline Orchestration、Cloud Native、Parallel Execution 3.2.4.2 Harness CD 的核心功能Canary Deployment、Blue/Green Deployment、Rollback Automation 3.2.4.3 Harness Test Intelligence 的核心功能虽有不足但可扩展 3.3 核心架构设计 3.3.1 整体系统架构图Mermaid 架构图 3.3.2 核心模块交互关系图Mermaid 交互关系图 3.3.3 核心概念 ER 实体关系图Mermaid ER 图 3.3.4 核心属性维度对比Markdown 表格 3.4 核心算法与数学模型 3.4.1 最小化回归用例集筛选算法 3.4.1.1 算法原理基于代码变更的影响分析 用例关联度模型 3.4.1.2 数学模型用例关联度计算余弦相似度 TF-IDF 3.4.1.3 算法流程图Mermaid 流程图 3.4.1.4 Python 伪代码 3.4.2 脚本自动修复算法 3.4.2.1 算法原理错误信息解析 DOM/API 文档对比 LLM 推理 3.4.2.2 算法流程图Mermaid 流程图 3.4.2.3 Python 伪代码 3.4.3 缺陷根因分析算法 3.4.3.1 算法原理多模态信息融合 LLM 链式推理 代码关联 3.4.3.2 数学模型多模态信息融合注意力机制 3.4.3.3 算法流程图Mermaid 流程图 3.4.3.4 Python 伪代码 4. 环境准备 4.1 硬件与软件要求 4.1.1 硬件要求 4.1.2 软件要求 4.2 本地开发环境搭建 4.2.1 安装 Python 3.11 4.2.2 创建并激活虚拟环境 4.2.3 安装核心依赖库requirements.txt 4.2.4 配置 OpenAI/Claude API Key 4.2.5 安装 Playwright 并下载浏览器驱动 4.2.6 安装并配置 Harness CLI 4.3 Harness 云平台环境准备 4.3.1 注册 Harness 云平台账号 4.3.2 创建 Harness 项目 4.3.3 配置 Harness Code Repository连接 GitHub/GitLab 4.3.4 配置 Harness Secrets Manager存储 API Key、数据库密码等敏感信息 4.3.5 配置 Harness Cloud ProviderAWS/GCP/Azure可选用于部署测试环境 4.4 测试应用准备 4.4.1 测试应用简介一个简单的电商网站Next.js Prisma PostgreSQL 4.4.2 测试应用的 GitHub 仓库地址 4.4.3 测试应用的本地部署步骤 4.4.4 测试应用的 Swagger/OpenAPI 文档地址 4.4.5 测试应用的 Figma 原型链接可选 5. 分步实现AI 用例自动生成模块 5.1 模块功能设计 5.1.1 功能需求清单 5.1.2 功能流程图Mermaid 流程图 5.2 模块接口设计 5.2.1 RESTful API 接口设计OpenAPI 3.0 规范 5.2.2 接口请求/响应示例 5.3 模块核心实现源代码 5.3.1 项目目录结构 5.3.2 配置文件config.py、.env.example 5.3.3 工具类utils.py文档解析PDF/Word/Markdown、Figma 原型解析、Swagger/OpenAPI 文档解析、Playwright 代码生成、Gherkin 代码生成、Pytest 代码生成 5.3.4 LangChain Prompt Templatesprompts.pyPRD 解析 Prompt、Figma 解析 Prompt、Swagger 解析 Prompt、功能测试用例生成 Prompt、UI 自动化用例生成 Prompt、API 自动化用例生成 Prompt 5.3.5 LangChain Agentsagents.py测试用例生成 Multi-AgentPRD Agent、Figma Agent、Swagger Agent、Use Case Generator Agent、UI Code Generator Agent、API Code Generator Agent 5.3.6 RESTful API 服务main.py基于 FastAPI 实现 5.3.7 CLI 工具cli.py基于 Click 实现方便本地调试 5.4 模块本地测试 5.4.1 启动 FastAPI 服务 5.4.2 使用 CLI 工具生成测试用例 5.4.3 使用 Postman 测试 RESTful API 5.4.4 运行生成的 UI/API 自动化用例 6. 分步实现AI 回归测试优化与执行模块 6.1 模块功能设计 6.1.1 功能需求清单 6.1.2 功能流程图Mermaid 流程图 6.2 模块接口设计 6.2.1 RESTful API 接口设计OpenAPI 3.0 规范 6.2.2 接口请求/响应示例 6.3 模块核心实现源代码 6.3.1 工具类regression_utils.pyGit diff 解析、代码变更影响分析、用例关联度计算、最小化回归用例集筛选、错误信息解析、DOM/API 文档对比、脚本自动修复 6.3.2 LangChain Prompt Templatesregression_prompts.py错误信息解析 Prompt、DOM/API 文档对比 Prompt、脚本自动修复 Prompt 6.3.3 LangChain Agentsregression_agents.py回归测试优化 Multi-AgentCode Change Analyzer Agent、Use Case Selector Agent、Script Executor Agent、Error Parser Agent、Script Fixer Agent 6.3.4 RESTful API 服务regression_main.py基于 FastAPI 实现 6.3.5 CLI 工具regression_cli.py基于 Click 实现 6.4 模块本地测试 6.4.1 模拟代码变更 6.4.2 使用 CLI 工具筛选最小化回归用例集 6.4.3 使用 CLI 工具执行回归测试并自动修复脚本 6.4.4 验证修复后的脚本是否能正常运行 7. 分步实现AI 实时缺陷定位与报告生成模块 7.1 模块功能设计 7.1.1 功能需求清单 7.1.2 功能流程图Mermaid 流程图 7.2 模块接口设计 7.2.1 RESTful API 接口设计OpenAPI 3.0 规范 7.2.2 接口请求/响应示例 7.3 模块核心实现源代码 7.3.1 工具类defect_utils.py测试日志收集、网络请求收集、DOM 截图收集、错误堆栈收集、多模态信息融合、Jira 缺陷报告生成、Jira API 调用 7.3.2 LangChain Prompt Templatesdefect_prompts.py多模态信息融合 Prompt、缺陷根因分析 Prompt、代码关联 Prompt、Jira 缺陷报告生成 Prompt 7.3.3 LangChain Agentsdefect_agents.py缺陷定位 Multi-AgentInfo Collector Agent、Info Fuser Agent、Root Cause Analyzer Agent、Code Linker Agent、Report Generator Agent、Jira Uploader Agent 7.3.4 RESTful API 服务defect_main.py基于 FastAPI 实现 7.3.5 CLI 工具defect_cli.py基于 Click 实现 7.4 模块本地测试 7.4.1 模拟测试失败 7.4.2 使用 CLI 工具收集失败信息 7.4.3 使用 CLI 工具分析根因并生成缺陷报告 7.4.4 验证缺陷报告是否能正常提交到 Jira 8. 分步实现整合到 Harness CI/CD 流程 8.1 Harness Pipeline 设计 8.1.1 Pipeline 功能需求清单 8.1.2 Pipeline 架构图Mermaid 架构图 8.2 Harness Pipeline 配置 8.2.1 创建 Harness CI Pipeline 8.2.2 配置 Pipeline 的 SecretsOpenAI/Claude API Key、Jira API Key、数据库密码等 8.2.3 配置 Pipeline 的 StagesCode Checkout、Lint、Unit Test、AI 用例生成可选仅当 PRD/Figma/Swagger 更新时、AI 回归测试优化与执行、AI 缺陷定位与报告生成、Build、Deploy to Staging、Integration Test、Deploy to ProductionCanary 8.2.4 配置 Pipeline 的 TriggersPR Trigger、Push Trigger、Scheduled Trigger 8.2.5 配置 Pipeline 的 NotificationsSlack/Email 通知 8.3 Harness Pipeline 本地测试 8.3.1 使用 Harness CLI 本地运行 Pipeline 8.3.2 模拟 PR 提交并触发 Pipeline 8.3.3 验证 Pipeline 的每个 Stage 是否能正常运行 8.4 Harness Pipeline 云平台部署 8.4.1 将 Pipeline 推送到 Harness 云平台 8.4.2 配置 Pipeline 的 Cloud Provider 8.4.3 触发 Pipeline 并在 Harness 云平台监控 9. 关键代码解析与深度剖析 9.1 AI 用例自动生成模块关键代码解析 9.1.1 Multi-Agent 编排的实现LangChain 的 Multi-Agent Supervisor 9.1.2 Figma 原型解析的实现使用 figma-api-python 库 9.1.3 Playwright 代码生成的实现Prompt Engineering Few-Shot Learning 9.2 AI 回归测试优化与执行模块关键代码解析 9.2.1 代码变更影响分析的实现使用 tree-sitter 库解析代码 AST 9.2.2 用例关联度计算的实现TF-IDF 余弦相似度 9.2.3 脚本自动修复的实现错误信息解析 DOM/API 文档对比 LLM 推理 9.3 AI 实时缺陷定位与报告生成模块关键代码解析 9.3.1 多模态信息融合的实现Prompt Engineering Claude 3.5 Sonnet 的多模态能力 9.3.2 代码关联的实现使用 Harness Code Connect API 9.3.3 Jira 缺陷报告生成的实现使用 jira-python 库 9.4 设计决策、性能权衡与潜在的“坑” 9.4.1 设计决策为什么选择 Multi-Agent 而不是 Single Agent 9.4.2 设计决策为什么选择 FastAPI 而不是 Flask/Django 9.4.3 性能权衡Token 长度限制 vs 推理质量 9.4.4 性能权衡本地执行 vs 云端执行 9.4.5 潜在的“坑”LLM 的幻觉问题 9.4.6 潜在的“坑”Playwright 选择器的稳定性问题 9.4.7 潜在的“坑”Git diff 解析的准确性问题 10. 结果展示与验证 10.1 AI 用例自动生成模块结果展示与验证 10.1.1 功能测试用例生成结果Gherkin 格式 10.1.2 UI 自动化用例生成结果Playwright Python 代码 10.1.3 API 自动化用例生成结果Requests Pytest 代码 10.1.4 用例覆盖率验证使用 Coverage.py 工具 10.2 AI 回归测试优化与执行模块结果展示与验证 10.2.1 最小化回归用例集筛选结果 10.2.2 回归测试时间对比传统回归 vs 最小化回归 10.2.3 脚本自动修复结果 10.2.4 脚本维护成本对比传统维护 vs 自动修复 10.3 AI 实时缺陷定位与报告生成模块结果展示与验证 10.3.1 缺陷根因分析结果 10.3.2 代码关联结果 10.3.3 Jira 缺陷报告生成结果 10.3.4 缺陷定位时间对比传统定位 vs AI 定位 10.4 整合到 Harness CI/CD 流程结果展示与验证 10.4.1 Harness Pipeline 运行截图 10.4.2 Slack/Email 通知截图 10.4.3 线上事故率对比传统流程 vs AI 驱动流程 11. 性能优化与最佳实践 11.1 AI 用例自动生成模块性能优化与最佳实践 11.1.1 性能优化使用 LangChain 的 Streaming API 减少等待时间 11.1.2 性能优化使用 Cache 缓存已生成的用例 11.1.3 最佳实践使用 Few-Shot Learning 提升用例质量 11.1.4 最佳实践使用 Human-in-the-LoopHITL机制修正 LLM 的幻觉 11.1.5 最佳实践定期更新 Prompt Templates 11.2 AI 回归测试优化与执行模块性能优化与最佳实践 11.2.1 性能优化使用 Parallel Execution 并行执行回归用例 11.2.2 性能优化使用 Headless Mode 减少资源消耗 11.2.3 最佳实践定期更新用例关联度模型 11.2.4 最佳实践使用 HITL 机制验证脚本自动修复的结果 11.2.5 最佳实践使用 Playwright 的 Locator API 替代 CSS/XPath 选择器 11.3 AI 实时缺陷定位与报告生成模块性能优化与最佳实践 11.3.1 性能优化只收集必要的失败信息 11.3.2 性能优化使用 Claude 3.5 Sonnet 的 Vision API 替代 GPT-4o 的 Vision API成本更低 11.3.3 最佳实践使用 HITL 机制验证缺陷根因分析的结果 11.3.4 最佳实践定期更新 Jira 缺陷报告模板 11.3.5 最佳实践使用 Harness Code Insights 辅助缺陷定位 11.4 整合到 Harness CI/CD 流程性能优化与最佳实践 11.4.1 性能优化使用 Harness 的 Cloud Native Builds 减少构建时间 11.4.2 性能优化使用 Harness 的 Test Intelligence虽有不足但可与我们的模块结合 11.4.3 最佳实践使用 Canary Deployment 减少线上风险 11.4.4 最佳实践使用 Rollback Automation 快速回滚 11.4.5 最佳实践定期监控 Pipeline 的性能 12. 常见问题与解决方案 12.1 AI 用例自动生成模块常见问题与解决方案 12.1.1 问题LLM 生成的用例覆盖率不足 12.1.2 问题LLM 生成的 Playwright 代码无法运行 12.1.3 问题Figma 原型解析失败 12.1.4 问题Swagger/OpenAPI 文档解析失败 12.2 AI 回归测试优化与执行模块常见问题与解决方案 12.2.1 问题最小化回归用例集筛选不准确 12.2.2 问题脚本自动修复失败 12.2.3 问题Git diff 解析失败 12.2.4 问题Playwright 选择器找不到元素 12.3 AI 实时缺陷定位与报告生成模块常见问题与解决方案 12.3.1 问题缺陷根因分析不准确 12.3.2 问题代码关联失败 12.3.3 问题Jira 缺陷报告生成失败 12.3.4 问题Jira 缺陷报告提交失败 12.4 整合到 Harness CI/CD 流程常见问题与解决方案 12.4.1 问题Harness Pipeline 运行失败 12.4.2 问题Secrets 配置失败 12.4.3 问题Trigger 配置失败 12.4.4 问题Notifications 配置失败 13. 未来展望与扩展方向 13.1 AI 驱动测试的未来发展趋势 13.1.1 多模态 AI Agent 的普及 13.1.2 完全自主的 AI 测试 Agent 的出现 13.1.3 AI 测试与 DevSecOps 的深度结合 13.1.4 行业数据AI 驱动测试的市场规模预测 13.2 本文方案的未来扩展方向 13.2.1 扩展到性能测试使用 AI Agent 自动生成性能测试用例、自动执行性能测试、自动分析性能瓶颈 13.2.2 扩展到安全测试使用 AI Agent 自动生成安全测试用例、自动执行安全测试、自动分析安全漏洞 13.2.3 扩展到移动端测试使用 Playwright for Mobile 或 Appium Agent 13.2.4 扩展到多语言测试支持中文、英文、日文等多语言的用例生成与缺陷定位 13.2.5 优化幻觉问题使用 RAG检索增强生成技术结合内部的测试知识库 13.2.6 优化用例关联度模型使用深度学习BERT、GPT替代 TF-IDF 余弦相似度 13.3 行业发展与未来趋势问题演变发展历史的 Markdown 表格 14. 总结 14.1 文章核心要点回顾 14.2 文章的主要贡献 14.3 给读者的建议 15. 参考资料 15.1 官方文档 15.2 论文 15.3 博客文章 15.4 开源项目 16. 附录 16.1 完整的源代码链接GitHub 16.2 完整的配置文件 16.3 完整的数据表格 16.4 完整的测试用例示例第二部分核心内容2. 问题背景与动机2.1 核心概念在深入探讨问题背景之前我们先明确几个核心概念手工测试测试人员手动点击应用、输入数据、检查结果的测试方式传统自动化测试测试人员使用 Selenium/Appium/Playwright 等工具编写自动化脚本模拟手工测试的测试方式AI 驱动测试使用 AI/ML/LLM 等技术辅助或替代测试人员完成测试工作的测试方式Harness CI/CD一款 AI 驱动的全链路 CI/CD 平台提供 Code Insights、Pipeline Orchestration、Cloud Native、Canary Deployment、Blue/Green Deployment、Rollback Automation 等核心功能AI Agent一种能够感知环境、推理决策、采取行动、记忆历史的智能实体。2.2 问题背景2.2.1 传统软件测试的发展历程与局限性传统软件测试的发展历程可以分为三个阶段手工测试阶段1950s-1990s这一阶段的软件规模较小、功能较少手工测试完全可以满足需求。但随着软件规模的不断扩大、功能的不断增加手工测试的效率低下、覆盖率不足、重复性劳动多等问题逐渐暴露出来传统自动化测试阶段1990s-2020s这一阶段出现了 Selenium2004、Appium2012、Playwright2020等自动化测试工具测试人员可以编写自动化脚本模拟手工测试大大提高了测试效率。但传统自动化测试也存在很多局限性效率低下面对复杂的业务流程编写自动化脚本可能需要数周覆盖率不足回归覆盖只能“挑重点”漏测导致线上事故频发维护成本高应用UI/API稍微修改之前写的脚本就会集体报错维护时间甚至超过了开发新功能的时间定位难测试失败后测试人员/开发人员往往需要翻几百行测试日志、抓几个小时的网络请求、甚至复现几十次才能找到问题根因割裂测试阶段往往是“事后诸葛亮”只有开发提交完PR才会跑而且只能输出“通过/失败”的二元结果AI 驱动测试阶段2020s-至今这一阶段出现了 GPT-32020、GPT-42023、GPT-4o2024、Claude 3.5 Sonnet2024等大语言模型以及 Computer Vision、NLP、ML 等技术AI 驱动测试逐渐成为研究热点与应用趋势。为了更直观地了解传统自动化测试的现状我们来看一组行业数据来自 Gartner、Forrester、Stack Overflow 2024 年的报告测试自动化覆盖率全球平均测试自动化覆盖率仅为 30%-40%核心业务流程的覆盖率也只有 60%-70%维护成本占比传统自动化测试的维护成本占测试总成本的 70%-80%缺陷定位时间占比缺陷定位时间占测试/开发总时间的 30%-40%线上事故率由于漏测导致的线上事故率占总线上事故率的 60%-70%测试人员工作满意度全球测试人员的工作满意度仅为 40%-50%主要原因是重复性劳动多、工作压力大、成就感低。2.2.2 AI 驱动测试的兴起与发展什么是 AI 驱动测试AI 驱动测试AI-Powered Testing是指使用 AI/ML/LLM 等技术辅助或替代测试人员完成测试工作的测试方式包括但不限于用例自动生成自动生成功能测试用例、UI 自动化用例、API 自动化用例、性能测试用例、安全测试用例回归测试优化自动筛选需要重跑的最小化回归用例集、自动修复因 UI/API 变更导致的脚本错误缺陷定位与报告生成自动分析测试失败的根因、定位具体代码位置、生成详细的缺陷报告并提交到缺陷管理系统性能测试与分析自动生成性能测试用例、自动执行性能测试、自动分析性能瓶颈安全测试与分析自动生成安全测试用例、自动执行安全测试、自动分析安全漏洞测试数据生成自动生成符合业务规则的测试数据测试计划与策略制定自动制定测试计划与策略。AI 驱动测试的核心技术AI 驱动测试的核心技术包括大语言模型LLMOpenAI GPT-4o、Claude 3.5 Sonnet、Gemini 1.5 Pro 等用于推理决策、代码生成、自然语言处理计算机视觉Computer Vision用于解析 Figma 原型、识别 UI 元素、分析 DOM 截图自然语言处理NLP用于解析 PRD、测试用例、缺陷报告机器学习ML用于用例关联度计算、代码变更影响分析、缺陷根因分析多模态 AI结合文本、图像、音频、视频等多种模态的信息进行推理决策。AI 驱动测试的应用场景目前AI 驱动测试已经在很多行业得到了应用包括但不限于电商行业自动生成电商网站的购物流程、支付流程的测试用例金融行业自动生成银行、证券、保险等金融产品的测试用例自动分析交易失败的根因医疗行业自动生成医疗设备、医疗软件的测试用例确保医疗软件的安全性与可靠性互联网行业自动生成社交软件、游戏软件、搜索引擎的测试用例自动优化回归测试。2.2.3 Harness CI/CD 的优势与测试整合需求什么是 HarnessHarness 是一款 AI 驱动的全链路 CI/CD 平台成立于 2016 年总部位于美国旧金山。Harness 的使命是“让软件交付变得简单、可靠、快速”为企业提供 Code Insights、Pipeline Orchestration、Cloud Native、Canary Deployment、Blue/Green Deployment、Rollback Automation、Security Testing OrchestrationSTO、Feature Flag ManagementFFM等核心功能。Harness CI/CD 的核心优势Harness CI/CD 的核心优势包括AI 驱动Harness 内置了 AI 能力可以自动优化 Pipeline、自动检测风险、自动回滚低代码Harness 提供了可视化的 Pipeline 编辑器测试人员/开发人员不需要编写复杂的 YAML 文件就能创建 Pipeline全链路Harness 提供了从代码提交到生产部署的全链路功能包括 Code Insights、CI、CD、STO、FFM云原生Harness 是一款云原生的 CI/CD 平台支持 AWS/GCP/Azure 等主流云平台支持 Kubernetes、Docker 等容器技术可扩展Harness 提供了丰富的插件市场测试人员/开发人员可以使用插件扩展 Harness 的功能也可以使用 Harness API 自定义功能。传统 Harness 测试整合的局限性虽然 Harness 内置了 Test Intelligence 功能但传统 Harness 测试整合还存在很多局限性缺乏 AI 用例自动生成能力Test Intelligence 只能筛选已有的用例不能自动生成新的用例缺乏 AI 脚本自动修复能力Test Intelligence 只能检测脚本错误不能自动修复脚本错误缺乏 AI 实时缺陷定位与报告生成能力Test Intelligence 只能输出“通过/失败”的二元结果不能分析根因、定位代码、生成缺陷报告缺乏多模态能力Test Intelligence 只能处理文本信息不能处理图像、音频、视频等多模态信息缺乏 Human-in-the-LoopHITL机制Test Intelligence 没有提供 HITL 机制无法修正 AI 的错误。2.3 问题描述基于以上问题背景我们可以总结出本文要解决的三个核心问题问题一如何使用 AI Agent 自动生成功能测试用例、UI 自动化用例、API 自动化用例提升测试覆盖率与编写效率问题二如何使用 AI Agent 自动筛选最小化回归用例集、自动修复因 UI/API 变更导致的脚本错误减少回归测试时间与维护成本问题三如何使用 AI Agent 自动分析测试失败的根因、定位具体代码位置、生成详细的缺陷报告并提交到缺陷管理系统提升缺陷定位效率问题四如何将以上三个 AI Agent 模块整合到 Harness CI/CD 流程中实现“左移测试”与“右移测试”的结合2.4 问题解决为了解决以上四个核心问题本文提出了一套完整的 AI Agent Harness Engineering 解决方案将大语言模型LLM的推理能力、Playwright Agent 的 UI/API 自动化执行能力、LangChain 的 Agent 编排与工具调用能力、Harness CI/CD 的持续集成部署与质量管控能力完美结合构建了一个企业级的 AI 驱动测试中台。这套方案的核心思路如下针对问题一使用 Multi-Agent 架构分别负责 PRD 解析、Figma 原型解析、Swagger/OpenAPI 文档解析、功能测试用例生成、UI 自动化用例生成、API 自动化用例生成针对问题二使用 Git diff tree-sitter 解析代码变更使用 TF-IDF 余弦相似度计算用例关联度筛选最小化回归用例集使用错误信息解析 DOM/API 文档对比 LLM 推理自动修复脚本错误针对问题三使用 Multi-Agent 架构分别负责测试日志收集、网络请求收集、DOM 截图收集、错误堆栈收集、多模态信息融合、缺陷根因分析、代码关联、缺陷报告生成、Jira 缺陷报告提交针对问题四使用 FastAPI 开发 RESTful API 服务将三个 AI Agent 模块封装成 API使用 Harness CLI 将这些 API 整合到 Harness CI/CD 流程中实现 PR 触发、Push 触发、Scheduled 触发。2.5 边界与外延2.5.1 边界本文方案的边界如下应用场景主要针对 Web 应用的功能测试、UI 自动化测试、API 自动化测试、回归测试、缺陷定位技术栈主要使用 OpenAI GPT-4o/Claude 3.5 Sonnet、LangChain、Playwright、FastAPI、Click、Harness测试用例格式功能测试用例使用 Gherkin 格式UI 自动化用例使用 Playwright Python 代码API 自动化用例使用 Requests Pytest 代码缺陷管理系统主要针对 Jira代码仓库主要针对 GitHub/GitLab。2.5.2 外延本文方案的外延如下扩展到移动端测试使用 Playwright for Mobile 或 Appium Agent扩展到性能测试使用 AI Agent 自动生成性能测试用例、自动执行性能测试、自动分析性能瓶颈扩展到安全测试使用 AI Agent 自动生成安全测试用例、自动执行安全测试、自动分析安全漏洞扩展到多语言测试支持中文、英文、日文等多语言的用例生成与缺陷定位扩展到其他缺陷管理系统支持 Azure DevOps、GitLab Issues、GitHub Issues 等扩展到其他代码仓库支持 Bitbucket、Gitee 等扩展到其他 CI/CD 平台支持 GitHub Actions、Jenkins、GitLab CI/CD 等。3. 核心概念与理论基础3.1 核心概念AI Agent Harness Engineering3.1.1 什么是 AI AgentAI Agent 的定义AI Agent人工智能代理是一种能够感知环境Perception、推理决策Reasoning、采取行动Action、记忆历史Memory的智能实体。AI Agent 的目标是在给定的环境中通过自主决策与行动完成特定的任务。AI Agent 的概念最早可以追溯到 1950 年代的图灵测试但直到 2020 年代大语言模型的出现AI Agent 才真正得到了广泛的应用。AI Agent 的核心要素AI Agent 的核心要素包括四个部分感知层、推理层、行动层、记忆层如下图所示Mermaid

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2554888.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…