APP稳定性测试方法、装置、设备和计算机可读存储介质制造方法及图纸

技术编号:33836736 阅读:20 留言:0更新日期:2022-06-16 11:54
本发明专利技术提供了一种APP稳定性测试方法、装置、设备和计算机可读存储介质,包括:获取待测试页面,根据待测试页面生成DOM树;对DOM树进行解析处理得到待测试页面中所有的页面元素;对所有页面元素进行筛选处理,从所有页面元素中筛选出一个或多个可操作元素;对于每个可操作元素,获取可操作元素的历史测试次数,当历史测试次数大于或等于预设测试次数,对可操作元素进行标记;从所有可操作元素中剔除已标记的可操作元素,得到一个或多个目标操作元素并选择一个目标操作元素执行稳定性测试。本发明专利技术通过设置可操作的预设测试次数,能够避免页面元素出现频繁访问操作,从而提升测试覆盖率;无需通过中间服务器向终端发送指令,提高了运行速率和运行速度。行速率和运行速度。行速率和运行速度。

【技术实现步骤摘要】
APP稳定性测试方法、装置、设备和计算机可读存储介质


[0001]本专利技术属于人工智能
,尤其涉及一种APP稳定性测试方法、APP稳定性测试装置、电子设备和计算机可读存储介质。

技术介绍

[0002]APP(Application,应用程序)测试中的稳定性测试,是一种常规测试,指向APP发送一系列的随机事件流,由于随机事件流具有随机性,因此在稳定性测试任务中,可能存在一个地方被多次点击,而有的地方却一次也没有被点击。所以会导致想测的地方一次也没有点击,有的地方却反复点击,从而导致覆盖不全面的情况发生。
[0003]为了解决覆盖不全面的问题,现有技术通过dfs算法遍历整个DOM树达到全覆盖,但是它是按照深度遍历的顺序去遍历每一个元素节点的,因此,当遍历到一些难以控制的控件,要想操作正常异常困难,实际运行中往往是卡在这里进入到死循环,而后面的节点只有前面的节点都遍历完了才会轮到它,这样导致后面的节点无法遍历。另外,现有技术往往需要通过一个中间的服务器向手机发送指令,从而降低了运行速率。

技术实现思路

[0004]以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
[0005]本专利技术实施例提供了一种APP稳定性测试方法、APP稳定性测试装置、电子设备和计算机可读存储介质,不但能够提升测试覆盖率,而且还能保证运行速度。
[0006]第一方面,本专利技术实施例提供了一种APP稳定性测试方法,包括:获取待测试页面,并根据所述待测试页面生成DOM树,其中,所述DOM树的节点信息对应为所述待测试页面的页面元素;对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素;对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素;对于每个所述可操作元素,获取所述可操作元素的历史测试次数,当所述历史测试次数大于或等于预设测试次数时,则对所述可操作元素进行标记;从所有所述可操作元素中剔除已标记的可操作元素,得到一个或多个目标操作元素,并选择一个所述目标操作元素执行稳定性测试。
[0007]根据本专利技术实施例的APP稳定性测试方法,至少具有如下有益效果:获取待测试页面,并根据所述待测试页面生成DOM树,其中,所述DOM树的节点信息对应为所述待测试页面的页面元素;对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素;对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素;对于每个所述可操作元素,获取所述可操作元素的历史测试次数,当所述历史测试次数大于或等于预设测试次数时,则对所述可操作元素进行标记;从所有所述可操作元素中剔除已标记的可操作元素,得到一个或多个目标操作元素,并选择一个所述目标操作元素执行稳定性测试。根据本专利技术实施例的技术方案,首先,通过给页面元素设置可操作的预设测试
次数,能够避免页面元素只能访问一次,设置后可以多次访问操作,同时又避免了频繁访问操作,从而能够提升测试覆盖率;其次,本专利技术实施例无需通过中间服务器向终端发送指令,提高了运行速率,保证了运行速度。
[0008]在一些实施例中,所述根据所述待测试页面生成DOM树,包括:获取与所述待测试页面对应的XML布局文件;基于字节流对所述XML布局文件进行解释处理,得到DOM树。
[0009]在一些实施例中,所述DOM树包括有多级节点,其中,上一级节点对应若干个下一级节点;所述对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素,包括:获取所述DOM树中所有最下级节点的节点信息;将所有最下级节点的节点信息作为所述待测试页面中所有的所述页面元素。
[0010]在一些实施例中,所述对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素,包括:从所有所述页面元素中剔除纯样式UI元素,并将剔除后剩余的所述页面元素作为可操作元素。
[0011]在一些实施例中,所述选择一个所述目标操作元素执行稳定性测试,包括如下之一:从所有所述目标操作元素中选择历史测试次数最少的目标操作元素执行稳定性测试;从所有所述目标操作元素中随机选择一个所述目标操作元素执行稳定性测试。
[0012]在一些实施例中,在所述选择一个所述目标操作元素执行稳定性测试之后,所述方法还包括:对所述目标操作元素的历史测试次数进行加一处理。
[0013]在一些实施例中,当所述目标操作元素为列表元素,其中,所述列表元素中包括多个样式结构一致的项目;所述对所述目标操作元素的历史测试次数进行加一处理,包括:在对所述列表元素中的任意一个所述项目执行稳定性测试后,对所述列表元素的历史测试次数进行加一处理。
[0014]在一些实施例中,一个所述可操作元素对应一个所述预设测试次数。
[0015]第二方面,本专利技术实施例还提供了一种APP稳定性测试装置,包括:DOM树生成单元,用于获取待测试页面,并根据所述待测试页面生成DOM树,其中,所述DOM树的节点信息对应为所述待测试页面的页面元素;DOM树解析单元,用于对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素;筛选单元,用于对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素;标记单元,用于对于每个所述可操作元素,获取所述可操作元素的历史测试次数,当所述历史测试次数大于或等于预设测试次数时,则对所述可操作元素进行标记;剔除单元,用于从所有所述可操作元素中剔除已标记的可操作元素,得到一个或多个目标操作元素;测试单元,用于选择一个所述目标操作元素执行稳定性测试。
[0016]根据本专利技术实施例的APP稳定性测试装置,至少具有如下有益效果:本专利技术实施例的APP稳定性测试装置对应于上述第一方面的APP稳定性测试方法,其中,APP稳定性测试方法包括如下步骤:获取待测试页面,并根据所述待测试页面生成DOM树,其中,所述DOM树的节点信息对应为所述待测试页面的页面元素;对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素;对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素;对于每个所述可操作元素,获取所述可操作元素的历史测试次数,当所述历史测试次数大于或等于预设测试次数时,则对所述可操作元素进行标记;从所有所述可操作元素中剔除已标记的可操作元素,得到一个或多个目标操作元素,并选
择一个所述目标操作元素执行稳定性测试。根据本专利技术实施例的技术方案,首先,通过给页面元素设置可操作的预设测试次数,能够避免页面元素只能访问一次,设置后可以多次访问操作,同时又避免了频繁访问操作,从而能够提升测试覆盖率;其次,本专利技术实施例无需通过中间服务器向终端发送指令,提高了运行速率,保证了运行速度。
[0017]第三方面,本专利技术实施例还提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的APP稳定性测试方法。
[0018]根本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种APP稳定性测试方法,其特征在于,包括:获取待测试页面,并根据所述待测试页面生成DOM树,其中,所述DOM树的节点信息对应为所述待测试页面的页面元素;对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素;对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素;对于每个所述可操作元素,获取所述可操作元素的历史测试次数,当所述历史测试次数大于或等于预设测试次数时,则对所述可操作元素进行标记;从所有所述可操作元素中剔除已标记的可操作元素,得到一个或多个目标操作元素,并选择一个所述目标操作元素执行稳定性测试。2.根据权利要求1所述的APP稳定性测试方法,其特征在于,所述根据所述待测试页面生成DOM树,包括:获取与所述待测试页面对应的XML布局文件;基于字节流对所述XML布局文件进行解释处理,得到DOM树。3.根据权利要求1所述的APP稳定性测试方法,其特征在于,所述DOM树包括有多级节点,其中,上一级节点对应若干个下一级节点;所述对所述DOM树进行解析处理,得到所述待测试页面中所有的所述页面元素,包括:获取所述DOM树中所有最下级节点的节点信息;将所有最下级节点的节点信息作为所述待测试页面中所有的所述页面元素。4.根据权利要求1所述的APP稳定性测试方法,其特征在于,所述对所有所述页面元素进行筛选处理,从所有所述页面元素中筛选出一个或多个可操作元素,包括:从所有所述页面元素中剔除纯样式UI元素,并将剔除后剩余的所述页面元素作为可操作元素。5.根据权利要求1所述的APP稳定性测试方法,其特征在于,所述选择一个所述目标操作元素执行稳定性测试,包括如下之一:从所有所述目标操作元素中选择历史测试次数最少的目标操作元素执行稳定性测试;从所有所述目标操作元素中随机选择一个所述目标操作元素执行稳定性测试。6.根据权利要...

【专利技术属性】
技术研发人员:荣蕾侯莉彬
申请(专利权)人:中国平安人寿保险股份有限公司
类型:发明
国别省市:

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

1