测试方法、装置、计算设备以及介质制造方法及图纸

技术编号:30283018 阅读:25 留言:0更新日期:2021-10-09 21:53
本公开实施例提供了一种测试方法、装置、计算设备以及介质,涉及软件测试技术领域。该方法包括:响应于针对应用程序的待测试界面的界面测试操作,确定待测试界面对应的对象树,对象树包括多个界面对象;响应于对待测试界面上的待测试界面对象的对象测试操作,根据唯一身份标识从对象树查找待测试界面对象;获取待测试界面对象的对象信息,基于对象信息对待测试界面进行测试。根据本公开实施例的技术方案,能够实现跨应用程序的多种客户端准确查找UI对象,提高UI测试的稳定性。提高UI测试的稳定性。提高UI测试的稳定性。

【技术实现步骤摘要】
测试方法、装置、计算设备以及介质


[0001]本公开的实施方式涉及软件测试
,更具体地,本公开的实施方式涉及测试方法、装置、计算设备以及介质。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本公开的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]随着互联网技术的发展,应用程序的功能变得越来越复杂,如何对应用程序的UI(User Interface,用户界面)进行自动化测试成为了关注的焦点。
[0004]对应用程序的UI进行自动化测试时,要解决的一个问题是如何准确获取应用程序的UI对象,在相关技术方案中,采用文本、资源名称、资源标识等对应用程序的UI对象进行描述,根据上述描述获取UI对象。

技术实现思路

[0005]但是,上述技术方案中,如果应用程序的多种客户端例如多个版本的客户端存在变动时,无法准确跨多种客户端获取UI对象,导致自动化测试用例不稳定。
[0006]为此,非常需要一种改进的测试方法,以使能够满足准确跨多种客户端获取UI对象的需求。
[0007]在本上下文中,本公开的实施方式期望提供一种测试方法、测试装置、计算设备以及介质。
[0008]在本公开实施例的第一方面中,提供了一种测试方法,包括:响应于针对应用程序的待测试界面的界面测试操作,确定所述待测试界面对应的对象树,所述对象树包括多个界面对象,所述界面对象的对象信息包括:所述界面对象的身份信息,所述身份信息包括所述界面对象在所述应用程序的多种客户端中的唯一身份标识;响应于对所述待测试界面上的待测试界面对象的对象测试操作,根据所述唯一身份标识从所述对象树查找所述待测试界面对象;获取所述待测试界面对象的对象信息,基于所述对象信息对所述待测试界面进行测试。
[0009]根据第一方面,在一些示例实施例中,所述确定所述待测试界面对应的对象树,包括:获取所述待测试界面对应的对象树;或者,构建所述待测试界面对应的对象树,其中,所述对象树的多个界面对象中各个界面对象均为所述待测试界面的必要界面对象,所述必要界面对象为根据所述应用程序的所述待测试界面的业务场景确定的界面对象。
[0010]根据第一方面,在一些示例实施例中,所述必要界面对象包括可交互对象和/或内容承载对象,所述可交互对象为根据所述应用程序的所述待测试界面的业务场景确定的进行界面交互的交互对象,所述内容承载对象为根据所述应用程序的所述待测试界面的业务场景确定的承载内容的界面对象。
[0011]根据第一方面,在一些示例实施例中,所述构建所述待测试界面对应的对象树,包
括:确定至少一种所述客户端的所述待测试界面的必要界面对象;基于所述待测试界面的必要界面对象之间的血缘关系,生成所述待测试界面对应的对象树,所述血缘关系包括:所述必要界面对象的父节点和子节点。
[0012]根据第一方面,在一些示例实施例中,所述确定至少一种客户端的所述待测试界面的必要界面对象,包括:确定多个版本中各个版本的所述客户端的所述待测试界面的必要界面对象,所述生成所述待测试界面对应的对象树,包括:生成各个版本的所述客户端的所述待测试界面对应的对象树。
[0013]根据第一方面,在一些示例实施例中,所述界面对象的对象信息还包括:所述界面对象的位置信息,所述位置信息包括所述界面对象的节点路径,所述方法还包括:根据所述唯一身份标识以及所述对象树,确定所述界面对象的节点路径,所述根据所述唯一身份标识从所述对象树查找所述待测试界面对象,包括:根据所述待测试界面对象的所述唯一身份标识以及所述节点路径,从所述对象树中查找所述待测试界面对象。
[0014]根据第一方面,在一些示例实施例中,所述对象信息还包括对象操作事件信息、对象内容属性信息以及对象状态信息中的一种或多种。
[0015]根据第一方面,在一些示例实施例中,所述响应于对所述待测试界面上的待测试界面对象的对象测试操作,根据所述唯一身份标识从所述对象树查找所述待测试界面对象,包括:响应于对所述待测试界面上的待测试界面对象的对象测试操作,确定所述对象测试操作对应的查找条件;根据所述待测试界面对象的所述唯一身份标识以及所述对象信息,从所述对象树中查找符合所述查询条件的所述待测试界面对象。
[0016]根据第一方面,在一些示例实施例中,所述响应于针对应用程序的待测试界面的界面测试操作,确定所述待测试界面对应的对象树,包括:响应于对所述应用程序的多个待测试界面的界面切换操作,确定各个待测试界面的对象树。
[0017]根据第一方面,在一些示例实施例中,所述方法还包括:确定相邻两个待测试界面对应的两个对象树之间的变化元素;根据所述变化元素,确定所述待测试界面的界面元素的曝光信息和反曝光信息。
[0018]根据第一方面,在一些示例实施例中,所述对象信还息还包括对象操作事件信息、对象内容属性信息以及对象状态信息中的一种或多种,所述基于所述对象信息对所述待测试界面进行测试,包括:根据所述对象信息生成所述待测试界面对象的测试方法,所述测试方法包括:对象获取方法、对象操作方法以及对象状态验证方法中的一种或多种;根据所述测试方法生成所述待测试界面对象对应的测试用例;基于所述测试用例对所述待测试界面对象的对象操作和对象状态进行测试验证。
[0019]根据第一方面,在一些示例实施例中,所述方法还包括:通过用户行为埋点获取目标操作路径下的用户行为日志,所述用户行为日志包括所述目标操作路径下的待测试界面的唯一身份标识、用户操作数据以及所述待测试界面的界面元素的曝光信息与反曝光信息;基于所述用户行为日志还原所述目标操作路径下的用户操作行为。
[0020]根据第一方面,在一些示例实施例中,所述方法还包括:获取所述应用程序的运行数据,所述运行数据包括性能数据;在所述性能数据达到预定值或者所述应用程序发生故障时,上报所述用户行为日志,所述用户行为日志包括所述目标操作路径下的各级用户行为埋点记录的日志。
[0021]根据第一方面,在一些示例实施例中,所述方法还包括:响应于对所述用户行为日志的聚合操作,对所述用户行为日志中的用户行为进行维度分析,所述维度包括访问的页面以及同时打开的页面数量。
[0022]根据第一方面,在一些示例实施例中,所述方法还包括:为所述待测试界面的界面对象配置均等的初始访问概率。
[0023]根据第一方面,在一些示例实施例中,所述方法还包括:按所述初始访问概率随机触发对所述待测试界面的界面对象的遍历访问;根据所述界面对象被访问的次数调整所述界面对象的访问概率。
[0024]根据第一方面,在一些示例实施例中,所述方法还包括:根据所述待测试界面的各个页面的同时打开数量,调整各个页面上的界面对象的访问概率。
[0025]根据本公开实施例的第二方面,提供了一种测试装置,包括:对象树确定模块,用于响应于针对应用程序的待测试界面的界面测试操作,确定所述待测试界面对应的对象树,所述对象树包括多个界面对象,所述界面对象的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种测试方法,其特征在于,包括:响应于针对应用程序的待测试界面的界面测试操作,确定所述待测试界面对应的对象树,所述对象树包括多个界面对象,所述界面对象的对象信息包括:所述界面对象的身份信息,所述身份信息包括所述界面对象在所述应用程序的多种客户端中的唯一身份标识;响应于对所述待测试界面上的待测试界面对象的对象测试操作,根据所述唯一身份标识从所述对象树查找所述待测试界面对象;获取所述待测试界面对象的对象信息,基于所述对象信息对所述待测试界面进行测试。2.根据权利要求1所述的方法,其特征在于,所述确定所述待测试界面对应的对象树,包括:获取所述待测试界面对应的对象树;或者,构建所述待测试界面对应的对象树,其中,所述对象树的多个界面对象中各个界面对象均为所述待测试界面的必要界面对象,所述必要界面对象为根据所述应用程序的所述待测试界面的业务场景确定的界面对象。3.根据权利要求2所述的方法,其特征在于,所述必要界面对象包括可交互对象和/或内容承载对象,所述可交互对象为根据所述应用程序的所述待测试界面的业务场景确定的进行界面交互的交互对象,所述内容承载对象为根据所述应用程序的所述待测试界面的业务场景确定的承载内容的界面对象。4.根据权利要求2所述的方法,其特征在于,所述构建所述待测试界面对应的对象树,包括:确定至少一种所述客户端的所述待测试界面的必要界面对象;基于所述待测试界面的必要界面对象之间的血缘关系,生成所述待测试界面对应的对象树,所述血缘关系包括:所述必要界面对象的父节点和子节点。5.根据权利要求4所述的方法,其特征在于,所述确定至少一种客户端的所述待测试界面的必要界面对象,包括:确定多个版本中各个版本的所述...

【专利技术属性】
技术研发人员:ꢀ七四专利代理机构
申请(专利权)人:杭州网易云音乐科技有限公司
类型:发明
国别省市:

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

1