CN117873907A - 控件元素测试方法、装置及存储介质 - Google Patents
控件元素测试方法、装置及存储介质 Download PDFInfo
- Publication number
- CN117873907A CN117873907A CN202410275091.3A CN202410275091A CN117873907A CN 117873907 A CN117873907 A CN 117873907A CN 202410275091 A CN202410275091 A CN 202410275091A CN 117873907 A CN117873907 A CN 117873907A
- Authority
- CN
- China
- Prior art keywords
- tested
- control element
- attribute information
- attribute
- unique identifier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 57
- 238000000034 method Methods 0.000 claims abstract description 51
- 238000001514 detection method Methods 0.000 claims abstract description 47
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 32
- 230000006870 function Effects 0.000 claims abstract description 18
- 230000003993 interaction Effects 0.000 claims description 37
- 238000012549 training Methods 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 2
- 238000002347 injection Methods 0.000 description 3
- 239000007924 injection Substances 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000036316 preload Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
本发明实施例公开了一种控件元素测试方法、装置及存储介质,所述方法包括:遍历待测试控件元素,获取每个待测试控件元素的定位路径;获取每个测试控件元素中的属性信息;基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为唯一标识和定位路径建立对应关系;基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测。可针对控件元素的功能、属性对其进行准确的分类,利用唯一标识对控件元素进行管理,对应在具体定位,可便于利用适用于该类别的检测模块对控件元素进行自动化检测。
Description
技术领域
本发明涉及控件元素技术领域,尤其涉及一种控件元素测试方法、装置及存储介质。
背景技术
国产Linux操作系统能够提供了稳定的系统运行版本,通过用户图形界面设置可以实现美观的设计和贴心的人机交互。且具有完善的生态,兼容大部分安卓和windows软件。国产Linux操作系统及应用程序中控件元素的种类繁多,给控件测试造成困难。
由于国产Linux操作系统的使用习惯和其它操作系统存在差异,这需要测试用例能够适应不同的操作习惯。传统的测试用例不再适用。其次,由于国产Linux操作系统的更新速度较快,并且对控件元素不能进行有效管理,自动化测试用例需要频繁进行维护和更新,给执行自动化测试造成了一定难度。
发明内容
本发明实施例提供了一种控件元素测试方法、装置及存储介质,以解决现有技术中传统自动化控件测试无法适用国产Linux操作系统的技术问题。
第一方面,本发明实施例提供了一种控件元素测试方法,包括:
遍历待测试控件元素,获取每个待测试控件元素的定位路径;
获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;
基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;
基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;
查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;
根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
第二方面,本发明实施例还提供了一种控件元素测试装置,包括:
遍历模块,用于遍历待测试控件元素,获取每个待测试控件元素的定位路径;
获取模块,用于获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;
生成模块,用于基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;
分类模块,用于基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;
查找模块,用于查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;
检测模块,用于根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
第三方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的控件元素测试方法。
本发明实施例提供的控件元素测试方法、装置及存储介质,通过遍历待测试控件元素,获取每个待测试控件元素的定位路径;获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。利用上述方式,可针对控件元素的功能、属性等对其进行准确的分类,同时利用唯一标识对控件元素进行管理,对应在界面中的具体定位,可便于利用适用于该类别的检测模块对控件元素进行自动化检测。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1是本发明实施例一提供的控件元素测试方法的流程示意图;
图2是本发明实施例二提供的控件元素测试方法的流程示意图;
图3是本发明实施例三提供的控件元素测试装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一提供的控件元素测试方法的流程图,本实施例可适用于对基于国产Linux操作系统的控件元素进行自动化测试情况,该方法可以由控件元素测试装置来执行,具体包括如下步骤:
步骤110,遍历待测试控件元素,获取每个待测试控件元素的定位路径。
在本实施例中,可以遍历所有用户图形界面,并在用户图像界面中根据控件元素标签或者标识,查询到所述待测试控件元素,并获取到每个待测试控件元素的定位路径。定位路径可通过Xpath方式进行记录,示例性的,可以将应用程序作为文档节点,将对应的界面作为下一级节点,并根据界面中的坐标信息作为孙节点。依次类推,将定位路径分别按节点进行存储,并进行记录。
步骤120,获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息。
对于每一个控件元素,首先提取其关键属性,如元素类型(如按钮、文本框等)、元素ID、元素名称、坐标位置、大小等。这些属性可以通过对控件元素进行分析或采用国产Linux操作系统下的自动化测试工具提取得到。示例性的,可以通过控件元素获取模块将内存注入模块附进GUI应用程序并启动,执行动态预加载库的内存注入、与GUI应用程序建立通信连接、发送查询命令和返回查询结果等功能,内存注入模块负责维护与控件元素获取模块的通信联系并在GUI 应用程序中获取所有控件对象的属性信息。
步骤130,基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系。
在本实施例中,可以采用如下两种方式生成唯一标识,第一种基于待测试控件元素中的功能属性、布局属性信息和序号为每个待测试控件元素生成唯一标识。第二种则是将所述待测试控件元素中的属性信息通过哈希变换映射生成唯一哈希值;将所述唯一哈希值作为唯一标识。
采用第一种方式,可以利用属性对待测试控件元素进行简单分类,并根据分类进行顺序编号,便于后期采用对应的检测模块对待测试控件元素进行测试。
采用第二种方式,可以采用特征编码技术(如哈希编码)将属性映射到一个唯一的特征值作为控件元素的唯一标识符,被用来精确识别和定位需要交互的控件元素,从而减少控件元素的查询时间,提供效率。
步骤140,基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类。
可选的,可以采用预设的分类规则和训练完成的分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类。相似特性是根据控件元素的功能性、结构特征、外观属性及语义信息等多个维度综合衡量的。例如,具有用户输入功能的文本框和文本域由于在功能性上的一致性,被归类为“输入型控件”;而按钮和复选框则因其与用户交互的特点而归类为“交互型控件”;另外,图片和图标因主要用于显示而被归类为“显示型控件”。 为了规范化分类过程,分类体系可以采用机器学习方法自动构建。利用上述方式能够高效的执行分类任务。
步骤150,查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径。
基于上述步骤,可以得到每个分类中的待测试控件元素的唯一标识和对应的定位路径。
步骤160,根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
示例性的,可以检测模块可以采用自动化测试用例,利用自动化测试用例进行测试。在编写测试用例时,不再直接操作控件元素,而是调用对应模块中的操作方法实现自动化快速测试。
本实施例通过遍历待测试控件元素,获取每个待测试控件元素的定位路径;获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。利用上述方式,可针对控件元素的功能、属性等对其进行准确的分类,同时利用唯一标识对控件元素进行管理,对应在界面中的具体定位,可便于利用适用于该类别的检测模块对控件元素进行自动化检测。
在本实施例的一个优选实施方式中,所述方法还可增加如下步骤:使用调用重用模块根据新增控件元素的类别增加类别属性、函数和方法,所述调用重用模块中封装类别属性、函数和方法。利用上述方式,可以实现控件元素的代码重用。示例性的,可以为每个控件类别定义一个模块,如“输入型控件模块”、“交互型控件模块”和“显示型控件模块”。每个模块封装了该类别控件共有的属性和操作方法。并在对应的模块中,实现一系列操作该类别控件所需的函数和方法。例如,输入型控件模块可能提供文本输入和清除的方法,而交互型控件模块可能提供点击和选择的方法。进一步的,所述重用模块还可设有暴露公共接口,所述暴露公共接口接收用户自定义的属性、函数和方法;所述重用模块设有与所述检测模块通信的接口,用于将自定义的属性、函数和方法传递至检测模块。利用上述方式,可以利用检测模块实现对控件元素进行自定义属性进行有效检测。
实施例二
图2是本发明实施例二提供的控件元素测试方法的流程示意图,本实施例以上述实施例为基础进行优化,将所述基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类,具体优化为:将待测试控件元素中的属性信息输入至训练完成的分类卷积神经网络模型,所述训练完成的分类卷积神经网络模型中输出层前设有反卷积层,获取所述反卷积层的输出结果;判断所述反卷积层的输出结果中特征值的数量是否小于预设的特征值数量阈值,在小于时,获取所述待测试控件元素的相对布局属性信息,以及临近元素的交互属性,并根据所述交互属性查看交互结果的元素布局和相对布局属性信息,根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定分类结果。
参见图2,所述控件元素测试方法,包括:
步骤210,遍历待测试控件元素,获取每个待测试控件元素的定位路径。
步骤220,获取每个测试控件元素中的属性信息。
步骤230,基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系。
步骤240,将待测试控件元素中的属性信息输入至训练完成的分类卷积神经网络模型,所述训练完成的分类卷积神经网络模型中输出层前设有反卷积层,获取所述反卷积层的输出结果。
在本实施例中,可采用训练完成的分类卷积神经网络模型接收每个待测试控件元素的属性信息,并利用分类卷积神经网络模型输出该待测试控件元素的分类结果。在本实施例中,所述分类卷积神经网络模型设有反卷积层,在分类卷积神经网络模型中,反卷积层相当于对特征进行另外一种卷积操作。因此,其反映为提取得到特征。
步骤250, 判断所述反卷积层的输出结果中特征值的数量是否小于预设的特征值数量阈值,在小于时,获取所述待测试控件元素的相对布局属性信息,以及临近元素的交互属性,并根据所述交互属性查看交互结果的元素布局和相对布局属性信息。
如果特征值的数量小于一定范围时,则说明提取到的特征进行分类的可信性较低,因此,需要借助设定规则对其进行校正辅助分类。在本实施例中,可以利用一些细节属性作为特征,进行分析。
在本实施例中,所述相对布局属性信息,可以是控件元素相对于界面或者其他对比因素,如字体、图表和图像等的相对数值。以及与临近元素的交互属性。并利用交互属性查看交互后的变化,特别是交互结果的元素布局和相对布局属性信息。
步骤260,根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定分类结果。
上述属性信息可以对待测试控件元素进行准确分类。特别是针对不易区分的登录、注册、导航的控件元素具有良好的分类效果。而由于上述属性信息属于细分信息,采用神经网络模型进行分类时,由于大部分控件元素不具备上述细分属性信息,大部分需要将其属性填充为空,反而会影响神经网络模型分类的准确性。
步骤270,查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径。
步骤280,根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
本实施例通过将所述基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类,具体优化为:将待测试控件元素中的属性信息输入至训练完成的分类卷积神经网络模型,所述训练完成的分类卷积神经网络模型中输出层前设有反卷积层,获取所述反卷积层的输出结果;判断所述反卷积层的输出结果中特征值的数量是否小于预设的特征值数量阈值,在小于时,获取所述待测试控件元素的相对布局属性信息,以及临近元素的交互属性,并根据所述交互属性查看交互结果的元素布局和相对布局属性信息,根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定分类结果。通过两种分类方法结合,提升了待测试控件元素分类的准确性。
在本实施例的一个优选实施方式中,所述方法还可增加如下步骤:将根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定的分类结果和对应的测试控件元素中的属性信息加入所述分类卷积神经网络模型的训练集。利用上述方式可以对分类卷积神经网络模型结构和超参数进行优化调整。
实施例三
图3是本发明实施例三提供的控件元素测试装置的结构示意图,参见图3,所述控件元素测试装置,包括:
遍历模块310,用于遍历待测试控件元素,获取每个待测试控件元素的定位路径;
获取模块320,用于获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;
生成模块330,用于基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;
分类模块340,用于基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;
查找模块350,用于查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;
检测模块360,用于根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
本实施例提供的控件元素测试装置,通过遍历待测试控件元素,获取每个待测试控件元素的定位路径;获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。利用上述方式,可针对控件元素的功能、属性等对其进行准确的分类,同时利用唯一标识对控件元素进行管理,对应在界面中的具体定位,可便于利用适用于该类别的检测模块对控件元素进行自动化检测。
在上述各实施例的基础上,所述分类模块包括:
输入单元,用于将待测试控件元素中的属性信息输入至训练完成的分类卷积神经网络模型,所述训练完成的分类卷积神经网络模型中输出层前设有反卷积层,获取所述反卷积层的输出结果;
判断单元,用于判断所述反卷积层的输出结果中特征值的数量是否小于预设的特征值数量阈值,在小于时,获取所述待测试控件元素的相对布局属性信息,以及临近元素的交互属性,并根据所述交互属性查看交互结果的元素布局和相对布局属性信息,根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定分类结果。
在上述各实施例的基础上,所述装置还包括:
加入模块,用于将根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定的分类结果和对应的测试控件元素中的属性信息加入所述分类卷积神经网络模型的训练集。
在上述各实施例的基础上,所述生成模块包括:
第一生成单元,用于基于待测试控件元素中的功能属性、布局属性信息和序号为每个待测试控件元素生成唯一标识。
在上述各实施例的基础上,所述生成模块包括:
第二生成单元,用于将所述待测试控件元素中的属性信息通过哈希变换映射生成唯一哈希值;
作为单元,用于将所述唯一哈希值作为唯一标识。
在上述各实施例的基础上,所述装置还包括:
增加模块,用于使用调用重用模块根据新增控件元素的类别增加类别属性、函数和方法,所述调用重用模块中封装类别属性、函数和方法。
在上述各实施例的基础上,所述重用模块设有暴露公共接口,所述暴露公共接口接收用户自定义的属性、函数和方法;
所述重用模块设有与所述检测模块通信的接口,用于将自定义的属性、函数和方法传递至检测模块。
在上述各实施例的基础上,所述生成模块用于:根据所述自定义属性和其它属性为每个待测试控件元素生成唯一标识。
本发明实施例所提供的控件元素测试装置可执行本发明任意实施例所提供的控件元素测试方法,具备执行方法相应的功能模块和有益效果。
实施例四
本发明实施例四还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的任一所述的控件元素测试方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或设备上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种控件元素测试方法,其特征在于,包括:
遍历待测试控件元素,获取每个待测试控件元素的定位路径;
获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;
基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;
基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;
查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;
根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
2.根据权利要求1所述的方法,其特征在于,所述基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类,包括:
将待测试控件元素中的属性信息输入至训练完成的分类卷积神经网络模型,所述训练完成的分类卷积神经网络模型中输出层前设有反卷积层,获取所述反卷积层的输出结果;
判断所述反卷积层的输出结果中特征值的数量是否小于预设的特征值数量阈值,在小于时,获取所述待测试控件元素的相对布局属性信息,以及临近元素的交互属性,并根据所述交互属性查看交互结果的元素布局和相对布局属性信息,根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定分类结果。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将根据所述测试控件元素的相对布局属性信息、临近元素的交互属性、交互结果的元素布局和相对布局属性信息确定的分类结果和对应的测试控件元素中的属性信息加入所述分类卷积神经网络模型的训练集。
4.根据权利要求1所述的方法,其特征在于,所述基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,包括:
基于待测试控件元素中的功能属性、布局属性信息和序号为每个待测试控件元素生成唯一标识。
5.根据权利要求1所述的方法,其特征在于,所述基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,包括:
将所述待测试控件元素中的属性信息通过哈希变换映射生成唯一哈希值;
将所述唯一哈希值作为唯一标识。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
使用调用重用模块根据新增控件元素的类别增加类别属性、函数和方法,所述调用重用模块中封装类别属性、函数和方法。
7.根据权利要求6所述的方法,其特征在于,所述重用模块设有暴露公共接口,所述暴露公共接口接收用户自定义的属性、函数和方法;
所述重用模块设有与所述检测模块通信的接口,用于将自定义的属性、函数和方法传递至检测模块。
8.根据权利要求7所述的方法,其特征在于,所述基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,包括:
根据所述自定义属性和其它属性为每个待测试控件元素生成唯一标识。
9.一种控件元素测试装置,其特征在于,包括:
遍历模块,用于遍历待测试控件元素,获取每个待测试控件元素的定位路径;
获取模块,用于获取每个测试控件元素中的属性信息,所述属性信息包括:基础属性、功能属性、显示属性、语义属性和布局属性信息;
生成模块,用于基于待测试控件元素中的属性信息为每个待测试控件元素生成唯一标识,并为所述唯一标识和所述定位路径建立对应关系;
分类模块,用于基于预设的分类规则和分类卷积神经网络模型根据所述属性信息对待测试控件元素进行分类;
查找模块,用于查找每个分类中的待测试控件元素的唯一标识,并根据所述唯一标识获取所述待测试控件元素的定位路径;
检测模块,用于根据分类结果选取对应的检测模块,并利用对应的检测模块按照所述定位路径的集合对所述待测试控件元素进行检测,所述对应的检测模块利用封装的共有操作方法实现。
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-8任一所述的控件元素测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410275091.3A CN117873907B (zh) | 2024-03-12 | 2024-03-12 | 控件元素测试方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410275091.3A CN117873907B (zh) | 2024-03-12 | 2024-03-12 | 控件元素测试方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117873907A true CN117873907A (zh) | 2024-04-12 |
CN117873907B CN117873907B (zh) | 2024-06-07 |
Family
ID=90595113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410275091.3A Active CN117873907B (zh) | 2024-03-12 | 2024-03-12 | 控件元素测试方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117873907B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019937A (zh) * | 2012-12-13 | 2013-04-03 | 广东欧珀移动通信有限公司 | 一种人机交互界面遍历测试方法 |
CN104615538A (zh) * | 2015-02-05 | 2015-05-13 | 天津市康凯特软件科技有限公司 | 一种基于手机界面控件元素的手机应用测试方法 |
CN108255722A (zh) * | 2018-01-15 | 2018-07-06 | 厦门美图移动科技有限公司 | 脚本生成方法、脚本生成装置及服务器 |
CN109408367A (zh) * | 2018-09-03 | 2019-03-01 | 深圳壹账通智能科技有限公司 | 一种识别交互界面的控件元素的方法及终端 |
CN109739764A (zh) * | 2018-12-29 | 2019-05-10 | 中国联合网络通信集团有限公司 | 一种应用程序测试方法和装置 |
CN110287111A (zh) * | 2019-06-21 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种用户界面的测试用例生成方法及装置 |
CN110413518A (zh) * | 2019-07-17 | 2019-11-05 | 深圳证券交易所 | 控件对象库的生成方法及生成装置和计算机可读存储介质 |
CN111930622A (zh) * | 2020-08-10 | 2020-11-13 | 中国工商银行股份有限公司 | 基于深度学习的界面控件测试方法及系统 |
US20210397546A1 (en) * | 2018-10-23 | 2021-12-23 | Tamas Cser | Software test case maintenance |
CN114090436A (zh) * | 2021-11-12 | 2022-02-25 | 乐元素科技(北京)股份有限公司 | 测试方法及装置 |
CN114238113A (zh) * | 2021-12-17 | 2022-03-25 | Oppo广东移动通信有限公司 | 应用测试方法及相关装置 |
CN114528216A (zh) * | 2022-02-18 | 2022-05-24 | 中国工商银行股份有限公司 | 基于页面图像识别的测试方法、系统、设备、介质、产品 |
WO2022160958A1 (zh) * | 2021-01-29 | 2022-08-04 | 华为技术有限公司 | 一种页面分类方法、页面分类装置和终端设备 |
EP4131010A1 (en) * | 2021-08-06 | 2023-02-08 | L & T Technology Services Limited | Method and system for performing human machine interface (hmi) automation testing |
CN117667663A (zh) * | 2022-09-08 | 2024-03-08 | 抖音视界有限公司 | 控件定位路径确定方法、装置、设备、存储介质及产品 |
-
2024
- 2024-03-12 CN CN202410275091.3A patent/CN117873907B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103019937A (zh) * | 2012-12-13 | 2013-04-03 | 广东欧珀移动通信有限公司 | 一种人机交互界面遍历测试方法 |
CN104615538A (zh) * | 2015-02-05 | 2015-05-13 | 天津市康凯特软件科技有限公司 | 一种基于手机界面控件元素的手机应用测试方法 |
CN108255722A (zh) * | 2018-01-15 | 2018-07-06 | 厦门美图移动科技有限公司 | 脚本生成方法、脚本生成装置及服务器 |
CN109408367A (zh) * | 2018-09-03 | 2019-03-01 | 深圳壹账通智能科技有限公司 | 一种识别交互界面的控件元素的方法及终端 |
US20210397546A1 (en) * | 2018-10-23 | 2021-12-23 | Tamas Cser | Software test case maintenance |
CN109739764A (zh) * | 2018-12-29 | 2019-05-10 | 中国联合网络通信集团有限公司 | 一种应用程序测试方法和装置 |
CN110287111A (zh) * | 2019-06-21 | 2019-09-27 | 深圳前海微众银行股份有限公司 | 一种用户界面的测试用例生成方法及装置 |
CN110413518A (zh) * | 2019-07-17 | 2019-11-05 | 深圳证券交易所 | 控件对象库的生成方法及生成装置和计算机可读存储介质 |
CN111930622A (zh) * | 2020-08-10 | 2020-11-13 | 中国工商银行股份有限公司 | 基于深度学习的界面控件测试方法及系统 |
WO2022160958A1 (zh) * | 2021-01-29 | 2022-08-04 | 华为技术有限公司 | 一种页面分类方法、页面分类装置和终端设备 |
EP4131010A1 (en) * | 2021-08-06 | 2023-02-08 | L & T Technology Services Limited | Method and system for performing human machine interface (hmi) automation testing |
CN114090436A (zh) * | 2021-11-12 | 2022-02-25 | 乐元素科技(北京)股份有限公司 | 测试方法及装置 |
CN114238113A (zh) * | 2021-12-17 | 2022-03-25 | Oppo广东移动通信有限公司 | 应用测试方法及相关装置 |
CN114528216A (zh) * | 2022-02-18 | 2022-05-24 | 中国工商银行股份有限公司 | 基于页面图像识别的测试方法、系统、设备、介质、产品 |
CN117667663A (zh) * | 2022-09-08 | 2024-03-08 | 抖音视界有限公司 | 控件定位路径确定方法、装置、设备、存储介质及产品 |
Non-Patent Citations (4)
Title |
---|
ROHIT KHANKHOJE: "web page element identification using selenium and cnn:a novel approach", 《JOURNAL OF SOFTWARE QUALITY ASSURANCE(JSQA)》, vol. 1, no. 1, 31 October 2023 (2023-10-31) * |
ZUBAIR KHALIQ: "A deep learning-based automated framework for functional User Interface testing", 《INFORMATION AND SOFTWARE TECHNOLOGY》, vol. 150, 31 October 2022 (2022-10-31) * |
全华斌: "人工智能技术在移动终端自动化测试中的运用探析", 《电子元器件与信息技术》, vol. 6, no. 7, 20 July 2022 (2022-07-20) * |
向彦彦: "基于计算机视觉的汽车充电桩界面功能智能检测系统", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, no. 7, 15 July 2023 (2023-07-15) * |
Also Published As
Publication number | Publication date |
---|---|
CN117873907B (zh) | 2024-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104239158A (zh) | 用于自动分析和链接错误日志的分析引擎 | |
CN103425584A (zh) | 基于Java字节码的大型应用回归测试信息处理方法 | |
CN104461892B (zh) | 自定义控件获取方法和装置 | |
US11922230B2 (en) | Natural language processing of API specifications for automatic artifact generation | |
KR102343043B1 (ko) | 실시간 작업 변경 사항에 대응하는 어노테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 | |
KR20060093004A (ko) | 컴퓨팅 시스템의 시각적 표현을 제공하기 위한 시스템 및방법 | |
CN111198852A (zh) | 微服务架构下知识图谱驱动的元数据关系推理方法 | |
CN113032264A (zh) | 页面视图控件的检测方法及装置 | |
CN116302930A (zh) | 应用测试方法和装置 | |
CN106201859A (zh) | 一种回归测试方法及系统 | |
KR20100069147A (ko) | 웹사이트 품질 테스트 방법 및 시스템 | |
US20240086165A1 (en) | Systems and methods for building and deploying machine learning applications | |
CN117873907B (zh) | 控件元素测试方法、装置及存储介质 | |
US9959196B2 (en) | Unification of descriptive programming and object repository | |
CN108536576B (zh) | 用于对应用程序的测试脚本进行优化的方法和装置 | |
CN115618363A (zh) | 漏洞路径的挖掘方法及相关设备 | |
CN115185535A (zh) | 依赖关系显示方法及装置、存储介质及电子设备 | |
JP6955162B2 (ja) | 解析装置、解析方法および解析プログラム | |
KR102343036B1 (ko) | 작업 가이드를 제공할 수 있는 어노테이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램 | |
WO2018154784A1 (ja) | 影響抽出装置、影響抽出プログラム及び影響抽出方法 | |
Swapna et al. | Duplicate Bug Report Detection of User Interface Bugs using Decision Tree Induction and Inverted Index Structure | |
CN112417252B (zh) | 爬虫路径确定方法、装置、存储介质与电子设备 | |
KR102491925B1 (ko) | 프로그램 분석 장치 및 방법 | |
US20240053980A1 (en) | Shortened narrative instruction generator for software code change | |
US10642915B2 (en) | System and method for automatic advancement of navigation through a user interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |