霍格沃兹测试开发学社

《Python测试开发进阶训练营》(随到随学!)
2023年第2期《Python全栈开发与自动化测试班》(开班在即)
报名联系weixin/qq:2314507862

知识图谱在 AI 测试开发中的应用

智能体与测试智能体
智能体 Agent
百度百科
能够感知环境并采取行动以实现特定目标的代理体。 它可以是软件、硬件或一个系统,具备自主性、适应性和交互能力。 智能体通过感知环境中的变化,根据自身学习到的知识和算法进行判断和决策,进而执行动作以影响环境或达到预定的目标

IBM
AI 代理是能够通过设计其工作流和利用可用工具,代表用户或其他系统自主执行任务的系统或程序。这些代理不仅限于自然语言处理,还包括决策、解决问题、与外部环境交互和执行操作等功能

Langchain
代理的核心思想是使用语言模型来选择要采取的一系列操作。在代理中,语言模型被用作推理引擎来确定要采取哪些操作以及按什么顺序

Amazon AWS
一种可以与环境交互、收集数据并利用数据执行自我决定任务以达到预定目标的软件程序。人类设定目标,但人工智能代理会独立选择实现这些目标所需的最佳行动

image

Agent 智能体核心元素总结
LLM 大模型 chatgpt qwen llama
Planning:规划 路由 ReAct
Parser:结构化输出解析 json
Tools:工具集与调用 tool function
Memory:记忆 短期 长期

8592b792-0b76-45ce-9fa2-44dff65c1444

测试智能体介绍
软件测试智能体(Software Testing Agent)是指在软件测试领域中,运用人工智能(尤其是大语言模型 LLM)、机器学习、强化学习、知识图谱、智能规划等技术,自主或半自主地执行软件测试任务的智能化系统或实体。

测试智能体的核心能力
自主感知 :自动识别软件测试环境、测试对象及相关测试需求。
决策与规划 :基于测试目标制定有效的测试策略,生成测试计划和测试用例。
自主执行 :自动执行测试过程,包括功能测试、接口测试、性能测试、异常情况处理等。
智能分析与反馈 :能够自主分析测试结果,识别缺陷与异常情况,并给出针对性的建议或反馈。
自适应学习 :可基于历史测试数据持续优化测试策略和测试用例,不断提升测试覆盖率和效率。
测试智能体的关键特征

image


Ai测试用例介绍
用例编写规范指南
本文定义了适用于 AI 软件测试智能体进行自动化测试执行的测试用例编写标准,确保用例内容的清晰、易读、易维护和智能化执行

Ai 测试用例的执行过程
观测:通过多模态模型或者控件树识别被测系统上下文,比如页面结构、系统状态等。
决策:根据测试用例、已执行步骤和当前观测结果预测下一步操作指令
执行:执行下一步操作指令,更新观测结果

dc285e80-e06f-4b04-94c9-fe8c32f7c457

Ai 测试用例编写的关键
被测系统上下文
了解被测系统上下文结构,以更好的定位自动化目标,并写出更贴合上下文的意图、步骤、预期结果

自动化动作
了解智能体支持的工具清单与自动化动作清单,以确保大模型可预测出正确的动作

被测系统上下文观测
理解大模型可以看到的上下文,有助于我们更好地理解测试用例的执行环境和目标。常见的流程是获取当前页面结构,然后进行 token 优化,从而降低 token 量,提高预测效率与大模型识别精准度。

UI控件树识别工具
效率与token消耗等性能指标,远胜图像识别与多模态大模型。Token压缩算法很关键。

UI界面视觉识别工具
图像识别虽然万能,但是性能、可维护性都有问题。

上下文分析工具
Web:浏览器开发者工具、selenium ide、playwright-recorder
App:adb、appium inspector
接口:浏览器开发者工具、postman、curl、mitmproxy、接口文档、swagger

Web 上下文分析工具 -- 浏览器开发者工具

dba42bd7-0148-4b53-934e-44a21ade421f

App 上下文分析工具 Appium inspector

e9c4d1ae-04d5-46f9-ac10-8d7a1281e73b

动作清单
上下文意图工具:由上下文推理出的产品意图

通用业务:登录 搜索 增删改查
领域业务:车联网 物联网 金融证券
通用自动化动作工具:

Web 自动化:点击 输入 滑动
App 自动化:点击 输入 滑动
接口自动化:get post
数据库自动化:增删改查
自定义工具:获取当前时间 执行命令 调用大模型 调用视觉模型
测试用例编写的常见风格
image

打开 ceshiren.com
搜索“人工智能”
断言搜索结果页面显示“人工智能”
上下文意图+命令式风格

打开 ceshiren.com
点击搜索按钮
在搜索框中输入“人工智能”
点击搜索按钮
断言帖子标题里包含“人工智能”
自动化动作+声明式风格

搜索按钮的id 为 search

输入框的css选择器为 #search

搜索按钮的class为 btn

打开 ceshiren.com
点击搜索按钮
在输入框中输入“人工智能”
点击搜索按钮
断言class为title 的元素包含“人工智能”
自动化动作+命令式风格

打开 ceshiren.com
点击id为 search 的元素
在css选择器
点击 class为 btn 的元素
断言class为 title 的元素包含“人工智能”
如何提高准确性
上下文意图如果不能识别,就主动添加更多元素特征 token 让大模型进行推理。大模型可以理解中英文 token 之间的关系。

91b1e1b6-66f3-4b59-a3ba-98f67cd51fef

<input
  aria-controls="search-result-count"
  aria-label="输入搜索关键字"
  autocomplete="off"
  placeholder="搜索"
  id="ember15"
  class="full-page-search search no-blur search-query ember-text-field ember-view"
  type="text"
/>

image

常见问题
如何提高准确性与稳定性
确定的 token + 确定的大模型配置,输入确定,输出就是确定的。选择固定的大模型,大模型的预训练数据差异不大,预测结果是明确收敛的自动化动作清单,大部分模型预测差异不大,是确定的。

大模型的参数配置、temperature top-p top-k 都是固定的,预测是稳定的。 token 中的最大变动因子是测试用例与被测系统的上下文,可以通过优化用例描述提高准确性与稳定性。

人工智能测试开发学习交流群

image

推荐学习

image

行业首个「知识图谱+测试开发」深度整合课程【人工智能测试开发训练营】,赠送智能体工具。提供企业级解决方案,人工智能的管理平台部署,实现智能化测试,落地大模型,实现从传统手工转向用AI和自动化来实现测试,提升效率和质量。

posted @ 2025-08-15 15:16  霍格沃兹测试开发学社  阅读(22)  评论(0)    收藏  举报