能够感知环境并采取行动以实现特定目标的代理体。 它可以是软件、硬件或一个系统,具备自主性、适应性和交互能力。 智能体通过感知环境中的变化,根据自身学习到的知识和算法进行判断和决策,进而执行动作以影响环境或达到预定的目标。
AI 代理是能够通过设计其工作流和利用可用工具,代表用户或其他系统自主执行任务的系统或程序。这些代理不仅限于自然语言处理,还包括决策、解决问题、与外部环境交互和执行操作等功能
代理的核心思想是使用语言模型来选择要采取的一系列操作。在代理中,语言模型被用作推理引擎来确定要采取哪些操作以及按什么顺序
一种可以与环境交互、收集数据并利用数据执行自我决定任务以达到预定目标的软件程序。人类设定目标,但人工智能代理会独立选择实现这些目标所需的最佳行动。
软件测试智能体(Software Testing Agent)是指在软件测试领域中,运用人工智能(尤其是大语言模型 LLM)、机器学习、强化学习、知识图谱、智能规划等技术,自主或半自主地执行软件测试任务的智能化系统或实体。
特征 | 描述 |
---|---|
自主性 | 能够独立或半独立地执行测试任务,减少人工干预。 |
智能性 | 运用 AI 技术提高测试设计、执行与分析的精准度与效率。 |
自适应性 | 可根据环境与测试结果的变化自动调整测试策略与行为。 |
协同性 | 能够与其他智能体或人工团队协作,共享知识与测试成果。 |
持续性 | 持续积累与利用历史数据、知识库,不断优化测试效果。 |
本文定义了适用于 AI 软件测试智能体进行自动化测试执行的测试用例编写标准,确保用例内容的清晰、易读、易维护和智能化执行。
了解被测系统上下文结构,以更好的定位自动化目标,并写出更贴合上下文的意图、步骤、预期结果
了解智能体支持的工具清单与自动化动作清单,以确保大模型可预测出正确的动作
理解大模型可以看到的上下文,有助于我们更好地理解测试用例的执行环境和目标。常见的流程是获取当前页面结构,然后进行 token 优化,从而降低 token 量,提高预测效率与大模型识别精准度。
效率与token消耗等性能指标,远胜图像识别与多模态大模型。Token压缩算法很关键。
图像识别虽然万能,但是性能、可维护性都有问题。
风格 | 特点 | 描述 |
---|---|---|
上下文意图+声明式 | 适合验证业务功能,可以灵活应对页面变化 | 描述任务意图目标 |
上下文意图+命令式 | 适合验证固定流程,可以确保流程的正确性 | 描述任务实现中间过程 |
自动化动作+声明式 | 适合意图识别不准确的场景 | 描述自动化任务意图目标 |
自动化动作+命令式 | 适合意图识别不准确的场景 | 描述自动化中间实现过程 |
1. 打开 ceshiren.com
2. 搜索“人工智能”
3. 断言搜索结果页面显示“人工智能”
1. 打开 ceshiren.com
2. 点击搜索按钮
3. 在搜索框中输入“人工智能”
4. 点击搜索按钮
5. 断言帖子标题里包含“人工智能”
搜索按钮的id 为 search
输入框的css选择器为 #search
搜索按钮的class为 btn
1. 打开 ceshiren.com
2. 点击搜索按钮
3. 在输入框中输入“人工智能”
4. 点击搜索按钮
5. 断言class为 title 的元素包含“人工智能”
1. 打开 ceshiren.com
2. 点击id 为 search 的元素
3. 在css选择器
4. 点击class为 btn 的元素
5. 断言class为 title 的元素包含“人工智能”
上下文意图如果不能识别,就主动添加更多元素特征 token 让大模型进行推理。大模型可以理解中英文 token 之间的关系。
<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"
/>
prompt 输入 token | 大模型结合上下文推理 | 输出 |
---|---|---|
输入“搜索词” |
prompt:输入
上下文:input |
成功
匹配不太精确, 有多个输入框的时候有歧义 |
在全页搜索中输入“搜索词” |
prompt:全页搜索
上下文:full page search |
成功
关联度高, 业务意图明确 |
在 full-page-search 中输入“搜索词” |
prompt:full-page-search
上下文: full-page-search |
成功
匹配度最高, 但是不能适应页面变化 |
确定的 token + 确定的大模型配置,输入确定,输出就是确定的。选择固定的大模型,大模型的预训练数据差异不大,预测结果是明确收敛的自动化动作清单,大部分模型预测差异不大,是确定的。大模型的参数配置、temperature top-p top-k 都是固定的,预测是稳定的。 token 中的最大变动因子是测试用例与被测系统的上下文,可以通过优化用例描述提高准确性与稳定性。