一种基于大模型的场景感知用户界面自主测试方法和系统与流程
本发明涉及人工智能、自动化测试和软件质量保障,具体涉及一种基于大模型的场景感知用户界面自主测试方法和系统,适用于web平台和android平台的图形用户界面测试。
背景技术:
1、图形用户界面(ui)已成为软件与用户交互的主要载体。随着敏捷开发和持续集成的发展,软件界面迭代频率不断提高,测试对象还包括canvas、surfaceview以及自定义view等缺少标准元素属性的自定义渲染区域,传统依赖固定元素标识、css选择器或xpath的自动化测试脚本容易因界面结构或元素属性变化而失效。
2、现有跨平台测试方案通常分别调用不同平台的原生测试工具,平台之间的界面结构、元素属性和定位表达式并不一致,同一测试逻辑难以直接复用。基于图像或ocr的定位方案虽可识别部分非标准控件,但识别结果通常独立于原生界面层级结构,难以表达虚拟控件与所在容器、周边元素及业务操作之间的关联关系。
3、采用大语言模型解析自然语言测试用例能够降低脚本编写成本,但自然语言中可能存在模糊元素描述、缺少前置步骤或省略预期结果等情况;如果缺少界面结构、场景上下文和既有操作经验的约束,生成结果的可执行性和一致性仍然不足。此外,现有脚本修复方法通常仅替换单一定位属性,难以在元素文本、位置、视觉样式和层级关系同时变化时可靠地确定替代元素。因此,需要一种能够统一表示不同平台的原生元素与虚拟控件、生成平台无关测试步骤并在定位失效时自主重定位的ui测试方案。
技术实现思路
1、发明目的:本发明提供一种基于大模型的场景感知ui自主测试方法和系统,以解决不同平台界面结构难以统一、非标准控件缺少结构化表征、自然语言测试用例逻辑不完整以及界面变化导致元素定位失效的问题。
2、技术方案:一种基于大模型的场景感知用户界面自主测试方法,包括以下步骤:
3、获取不同候选测试平台的原生界面层级结构和界面图像,识别未被原生界面层级结构表征的虚拟控件,将各虚拟控件对应的虚拟节点挂接至自定义渲染容器节点,并按照统一节点结构记录原生元素和虚拟控件的多模态特征,形成各候选测试平台的目标增强元素树;
4、根据各目标增强元素树内元素的多模态特征、所属功能场景及在功能操作序列中的位置,将不同候选测试平台中具有相同操作语义的元素映射至同一抽象元素标识,并在映射条目中记录抽象元素标识及其在不同候选测试平台下的元素定位表达式;
5、利用多模态大语言模型,根据自然语言用例脚本、场景说明文本、各目标增强元素树和功能操作序列,确定自然语言用例脚本中各操作步骤对应的抽象元素标识并补全缺失的前置操作步骤,生成引用抽象元素标识的标准化测试用例;
6、确定本次测试的执行平台,根据映射条目将标准化测试用例中的抽象元素标识转换为执行平台的元素定位表达式并执行;当未找到目标元素时,重新获取执行平台的界面数据以形成实时增强元素树,根据执行平台的目标增强元素树与实时增强元素树之间的结构差异确定候选元素范围,根据候选元素与目标元素的多模态特征相似度确定替代元素,利用替代元素的元素定位表达式更新与目标元素的抽象元素标识对应的映射条目后继续执行。
7、进一步地,将各虚拟控件对应的虚拟节点挂接至自定义渲染容器节点,包括:
8、获取各自定义渲染容器节点的容器边界框以及各虚拟控件的控件边界框;
9、将容器边界框包含控件边界框的自定义渲染容器节点确定为虚拟控件的父节点;
10、当虚拟控件位于嵌套的自定义渲染容器节点内时,将内层自定义渲染容器节点确定为虚拟控件的父节点;
11、将虚拟控件对应的虚拟节点写入父节点的虚拟子节点集合,并保留父节点原有的原生子节点关系。
12、进一步地,当候选测试平台为web平台时,原生界面层级结构为文档对象模型树,自定义渲染容器节点包括canvas节点,对应的目标增强元素树为增强文档对象模型树;
13、当候选测试平台为android平台时,原生界面层级结构为控件树,自定义渲染容器节点包括surfaceview节点或自定义view节点,对应的目标增强元素树为增强控件树;
14、统一节点结构包括节点类型、节点标识、父节点标识、原生属性、文本属性、视觉属性、布局属性和交互属性,虚拟节点还包括虚拟控件类别和控件边界框。
15、进一步地,多模态特征包括文本特征、视觉特征、布局特征和交互属性特征;
16、文本特征根据原生文本、光学字符识别文本和虚拟控件的描述标签中的至少一种获得;
17、视觉特征根据元素对应的局部图像区域提取;
18、布局特征根据元素相对于父节点的位置、元素尺寸、层级深度、局部元素密度和邻域元素密度确定;
19、交互属性特征用于表征元素的可见状态、可用状态、可点击状态和可编辑状态中的至少一种。
20、进一步地,功能操作序列包括对应于同一业务功能的有序抽象操作步骤、各抽象操作步骤对应的界面多模态特征以及界面状态切换标记;
21、将元素类型、父元素类型、文本内容、序列化的多模态特征和元素在功能操作序列中的位置输入元素语义分类模型,得到元素的标准化交互语义,并将标准化交互语义作为抽象元素标识;
22、映射条目记录抽象元素标识及其在不同候选测试平台下的元素定位表达式。
23、进一步地,功能操作序列通过以下方式构建:
24、从应用操作视频中提取多个原始操作序列,原始操作序列包括有序操作步骤以及各有序操作步骤对应的界面状态;
25、去除原始操作序列中的平台专属定位信息,并根据操作顺序、元素功能和界面语义,将属于同一业务功能的原始操作序列归入同一序列集合;
26、根据序列集合中共有的操作步骤生成平台无关的标准功能操作序列,并将不同候选测试平台的差异化操作记录为与标准功能操作序列关联的平台适配信息;
27、在生成标准化测试用例时,根据场景说明文本确定对应的标准功能操作序列,并利用标准功能操作序列及其平台适配信息补全自然语言用例脚本中缺失的前置操作步骤。
28、进一步地,根据执行平台的目标增强元素树与实时增强元素树之间的结构差异确定候选元素范围,包括:
29、根据目标增强元素树与实时增强元素树之间的树编辑距离,确定发生节点插入、节点删除、节点替换或节点移动的结构差异区域;
30、确定失效的元素定位表达式对应的目标元素在目标增强元素树中的目标节点;
31、以目标节点为检索原点,向上追溯父节点并向下遍历直属子节点,裁剪无关顶层容器和静态展示节点,将剪枝后保留的元素确定为候选元素。
32、进一步地,根据候选元素与目标元素的多模态特征相似度确定替代元素,包括:
33、分别计算各候选元素与目标元素之间的文本相似度、视觉相似度和空间位置相似度;
34、根据文本相似度、视觉相似度和空间位置相似度计算各候选元素的综合匹配分数,并按照综合匹配分数对候选元素进行排序;
35、按照排序结果对候选元素执行交互操作,并校验候选元素的交互属性以及候选元素的坐标是否处于页面有效范围;
36、将校验通过的候选元素确定为替代元素,将替代元素的元素定位表达式与目标元素对应的抽象元素标识关联,并更新映射条目。
37、本发明还提供一种基于大模型的场景感知用户界面自主测试控制系统,包括:
38、增强元素树构建模块,被配置为获取不同候选测试平台的原生界面层级结构和界面图像,识别未被原生界面层级结构表征的虚拟控件,将各虚拟控件对应的虚拟节点挂接至自定义渲染容器节点,并按照统一节点结构记录原生元素和虚拟控件的多模态特征,形成各候选测试平台的目标增强元素树;
39、跨平台映射模块,被配置为根据各目标增强元素树内元素的多模态特征、所属功能场景及在功能操作序列中的位置,将不同候选测试平台中具有相同操作语义的元素映射至同一抽象元素标识,并在映射条目中记录抽象元素标识及其在不同候选测试平台下的元素定位表达式;
40、测试用例生成模块,被配置为利用多模态大语言模型,根据自然语言用例脚本、场景说明文本、各目标增强元素树和功能操作序列,确定自然语言用例脚本中各操作步骤对应的抽象元素标识并补全缺失的前置操作步骤,生成引用抽象元素标识的标准化测试用例;
41、执行与修复模块,被配置为确定本次测试的执行平台,根据映射条目将标准化测试用例中的抽象元素标识转换为执行平台的元素定位表达式并执行;当未找到目标元素时,重新获取执行平台的界面数据以形成实时增强元素树,根据执行平台的目标增强元素树与实时增强元素树之间的结构差异确定候选元素范围,根据候选元素与目标元素的多模态特征相似度确定替代元素,利用替代元素的元素定位表达式更新与目标元素的抽象元素标识对应的映射条目后继续执行。
42、本发明还提供一种电子设备,包括:处理器;存储器;以及计算机程序,所述计算机程序被存储在所述存储器中,并且被配置为由所述处理器执行,所述计算机程序被处理器执行时实现如上所述的基于大模型的场景感知用户界面自主测试方法。
43、本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的基于大模型的场景感知用户界面自主测试方法。
44、本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上所述的基于大模型的场景感知用户界面自主测试方法。
45、有益效果:本发明将不同候选测试平台的原生界面层级结构与从自定义渲染容器中识别出的虚拟控件统一构造成目标增强元素树,使缺少原生元素实体的非标准控件具有可检索的层级关系、文本属性、视觉属性、布局属性和交互属性;通过建立平台无关的抽象元素标识与不同候选测试平台下的元素定位表达式之间的映射条目,隔离不同平台的元素定位差异,使自然语言测试逻辑能够转换为可跨平台复用的标准化测试用例;在元素定位失效时,根据目标增强元素树与实时增强元素树之间的结构差异确定候选元素范围,并结合候选元素与目标元素之间的文本相似度、视觉相似度和空间位置相似度确定替代元素,更新相应映射条目后继续执行,从而提高非标准控件的可测试性、测试用例的跨平台复用能力以及测试脚本对界面变化的适应能力。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com