测试软件应用中UI元素的智能定位控制方法及存储介质技术

技术编号:31607366 阅读:14 留言:0更新日期:2021-12-29 18:33
本发明专利技术公开了一种测试软件应用中UI元素的智能定位控制方法及存储介质,方法包括:S21、捕获测试中使用的UI元素的维度信息,以及UI元素的类型,并将信息存储在数据库中;S22、执行测试;S23、若测试结果为定位找到UI元素,则成功结束对UI元素的定位,否则执行S24

【技术实现步骤摘要】
测试软件应用中UI元素的智能定位控制方法及存储介质


[0001]本专利技术涉及软件测试领域,特别涉及一种测试软件应用中UI元素的智能定位控制方法及存储介质。

技术介绍

[0002]在向终端用户发布应用之前,软件开发者或设计者可以测试应用以了解应用在由目标设备提供的执行环境中执行时将如何显现和运行。一些这样的软件测试可以涉及使用测试系统在由各种不同目标设备提供的各种不同执行环境中运用应用。也就是说,测试系统可以生成对应用的输入,所述输入模拟可以由用户提供的输入(例如手势输入、文本输入或其他输入)。测试系统可以使用闪存有或以其他方式加载有测试器定义的软件和/或固件配置的实际生产设备,从而能够跨可由不同终端用户使用的大范围设备和设备配置来测试应用。
[0003]作为测试结果,测试系统可以输出在应用测试期间应用导致的在目标设备上显示的图形用户界面(GUI)的屏幕截图。测试系统可以针对运用应用的每个执行环境输出屏幕截图集合并且每一个屏幕截图集合可以具有大量图像。软件开发者或设计者可以跨不同集合分析屏幕截图以识别问题、异常或以其他方式了解GUI的外观可能如何根据执行环境和/或显示GUI的目标设备的变化而改变。一些软件开发者或设计者可能会承担过多的人工筛选多个屏幕截图集合以验证应用的设计和操作的任务。显然,这项工作将耗费大量的人工。
[0004]除此,许多问题仍然存在。例如,当重构应用程序的代码时,这对于许多类型的应用程序(例如网站)是常见的,可以改变与应用程序中的用户界面元素相对应的定位符。由于自动化测试软件可能依赖定位器在测试期间识别应用程序用户界面中的用户界面元素,因此在重构之后测试可能会失败。
[0005]现有技术中缺少一种智能的确保在重构代码之后定位器是准确的定位控制解决方案。

技术实现思路

[0006]为了克服现有技术存在的不足,本专利技术提供了一种测试软件应用中UI元素的智能定位控制方法及存储介质,所述技术方案如下:
[0007]一方面,本专利技术提供了一种测试软件应用中UI元素的智能定位控制方法,包括以下步骤:
[0008]S11、捕获测试中使用的UI元素的快照,以及UI元素的类型,并将信息存储在数据库中;
[0009]S12、执行测试;
[0010]S13、若测试结果为定位找到UI元素,则成功结束对UI元素的定位过程,否则执行S14-S15;
[0011]S14、基于丢失的UI元素的快照和基于丢失的UI元素的类型,在所述数据库中通过
图像比较来找到丢失的UI元素;
[0012]S15、判断是否找到丢失的UI元素,若找到,则执行S16-S18,否则手动识别和修复;
[0013]S16、在所述数据库中检索所找到的UI元素的新定位;
[0014]S17、使用新定位来执行测试;
[0015]S18、若测试未通过,则手动识别并修复,否则成功结束对UI元素的定位过程。
[0016]进一步地,步骤S14进一步包括:将丢失的UI元素的快照与存储在数据库中的UI元素的快照进行图像比对,若相似度超过预设的比例阈值,且两者具有相同的类型,则判定找到丢失的UI元素。
[0017]进一步地,所述UI元素和UI元素的类型包括按钮、复选框、单选按钮、下拉列表、文本输入框、窗口、超链接、滑块、菜单和文件选择控件中的一种或多种。
[0018]另一方面,本专利技术提供了另一种测试软件应用中UI元素的智能定位控制方法,包括以下步骤:
[0019]S21、捕获测试中使用的UI元素的维度信息,以及UI元素的类型,并将信息存储在数据库中;
[0020]S22、执行测试;
[0021]S23、若测试结果为定位找到UI元素,则成功结束对UI元素的定位过程,否则执行S24-S25;
[0022]S24、基于丢失的UI元素的维度信息和基于丢失的UI元素的类型,在所述数据库中通过维度信息比较来找到丢失的UI元素;
[0023]S25、判断是否找到丢失的UI元素,若找到,则执行S26-S28,否则手动识别和修复;
[0024]S26、在所述数据库中检索所找到的UI元素的新定位;
[0025]S27、使用新定位来执行测试;
[0026]S28、若测试未通过,则手动识别并修复,否则成功结束对UI元素的定位过程。
[0027]进一步地,所述UI元素和UI元素的类型包括按钮、复选框、单选按钮、下拉列表、文本输入框、窗口、超链接、滑块、菜单和文件选择控件中的一种或多种。
[0028]进一步地,所述UI元素的维度信息为UI元素的坐标。
[0029]进一步地,所述UI元素的维度信息为UI元素的物理维度,所述物理维度包括UI元素的高度和宽度,或UI元素的形状。
[0030]再一方面,本专利技术提供了一种非暂态计算机可读存储介质,用于存储指令程序,所述指令程序在被执行时进行以下操作:
[0031]S11、捕获测试中使用的UI元素的快照,以及UI元素的类型,并将信息存储在数据库中;
[0032]S12、执行测试;
[0033]S13、若测试结果为定位找到UI元素,则成功结束对UI元素的定位过程,否则执行S14-S15;
[0034]S14、基于丢失的UI元素的快照和基于丢失的UI元素的类型,在所述数据库中通过图像比较来找到丢失的UI元素;
[0035]S15、判断是否找到丢失的UI元素,若找到,则执行S16-S18,否则手动识别和修复;
[0036]S16、在所述数据库中检索所找到的UI元素的新定位;
[0037]S17、使用新定位来执行测试;
[0038]S18、若测试未通过,则手动识别并修复,否则成功结束对UI元素的定位过程。
[0039]再一方面,本专利技术提供了另一种非暂态计算机可读存储介质,用于存储指令程序,所述指令程序在被执行时进行以下操作:
[0040]S21、捕获测试中使用的UI元素的维度信息,以及UI元素的类型,并将信息存储在数据库中;
[0041]S22、执行测试;
[0042]S23、若测试结果为定位找到UI元素,则成功结束对UI元素的定位过程,否则执行S24-S25;
[0043]S24、基于丢失的UI元素的维度信息和基于丢失的UI元素的类型,在所述数据库中通过维度信息比较来找到丢失的UI元素;
[0044]S25、判断是否找到丢失的UI元素,若找到,则执行S26-S28,否则手动识别和修复;
[0045]S26、在所述数据库中检索所找到的UI元素的新定位;
[0046]S27、使用新定位来执行测试;
[0047]S28、若测试未通过,则手动识别并修复,否则成功结束对UI元素的定位过程。
[0048]本专利技术提供的技术方案带来的有益效果为提高了在重构或改变代码的上下文中对软件执行自动测试的效率。
附图说明
[0049]为了更清楚本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试软件应用中UI元素的智能定位控制方法,其特征在于,包括以下步骤:S11、捕获测试中使用的UI元素的快照,以及UI元素的类型,并将信息存储在数据库中;S12、执行测试;S13、若测试结果为定位找到UI元素,则成功结束对UI元素的定位过程,否则执行S14-S15;S14、基于丢失的UI元素的快照和基于丢失的UI元素的类型,在所述数据库中通过图像比较来找到丢失的UI元素;S15、判断是否找到丢失的UI元素,若找到,则执行S16-S18,否则手动识别和修复;S16、在所述数据库中检索所找到的UI元素的新定位;S17、使用新定位来执行测试;S18、若测试未通过,则手动识别并修复,否则成功结束对UI元素的定位过程。2.根据权利要求1所述的UI元素的智能定位控制方法,其特征在于,步骤S14进一步包括:将丢失的UI元素的快照与存储在数据库中的UI元素的快照进行图像比对,若相似度超过预设的比例阈值,且两者具有相同的类型,则判定找到丢失的UI元素。3.根据权利要求2所述的UI元素的智能定位控制方法,其特征在于,所述UI元素和UI元素的类型包括按钮、复选框、单选按钮、下拉列表、文本输入框、窗口、超链接、滑块、菜单和文件选择控件中的一种或多种。4.一种测试软件应用中UI元素的智能定位控制方法,其特征在于,包括以下步骤:S21、捕获测试中使用的UI元素的维度信息,以及UI元素的类型,并将信息存储在数据库中;S22、执行测试;S23、若测试结果为定位找到UI元素,则成功结束对UI元素的定位过程,否则执行S24-S25;S24、基于丢失的UI元素的维度信息和基于丢失的UI元素的类型,在所述数据库中通过维度信息比较来找到丢失的UI元素;S25、判断是否找到丢失的UI元素,若找到,则执行S26-S28,否则手动识别和修复;S26、在所述数据库中检索所找到的UI元素的新定位;S27、使用新定位来执行测试;S28、若测试未通过,则手动识别并修复,否则成功结束对UI元素的定位过程。5.根据权利要求4所述的UI元素的智能定位控制方法,其特...

【专利技术属性】
技术研发人员:师江帆
申请(专利权)人:苏州市龙测智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1