System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及软件测试,尤其涉及软件处理方法、电子设备及存储介质。
技术介绍
1、在软件测试领域,通常需要对面向用户的软件界面进行原型设计、功能分析和端到端测试,并且对软件进行界面及功能分析时,需要使用用户界面模型对软件界面进行描述,具体为根据界面结构、界面元素、界面控制流程和界面调用资源等其它业务逻辑关系对软件界面进行描述,通过这种用户界面模型,可有助于测试人员对整个软件产品的研发生命周期进行管理。因此,如何生成软件的用户界面模型就显得尤为重要。
2、相关技术中,首先由软件开发人员针对待开发的软件,使用特定的绘图软件绘制产品设计阶段的原型图以及前端开发过程的原型图,并基于绘制的所有原型图之间的业务逻辑关系生成用户界面模型;或者,通过对待测软件的所有源代码进行分析,确定待测软件各界面之间的业务逻辑关系并生成用户界面模型。
3、然而,由于依赖于软件设计阶段人为绘制的原型图并不能开发出与所有原型图分别完全一致的软件界面,由此自然也不能得到充分描述所有业务逻辑关系的用户界面模型;并且生成用户界面模型的过程也受限于待测软件的所有源代码的访问权限不能共享,从而导致用户界面模型的准确性很低,同时适用性很低。
技术实现思路
1、本申请旨在至少解决相关技术中存在的技术问题之一。为此,本申请提出一种软件处理方法,无需依赖软件设计阶段绘制的原型图,也无需获取待测软件的所有源代码,生成的用户界面模型既可以充分结构化描述所有业务逻辑关系,也可以直接应用于业务分析、测试和质量管理等方面,
2、本申请还提出软件处理装置。
3、本申请还提出一种电子设备。
4、本申请还提出一种非暂态计算机可读存储介质。
5、本申请还提出一种计算机程序产品。
6、根据本申请第一方面实施例的软件处理方法,包括:
7、获取待测软件在运行过程中遍历到的第一界面所包括的操作列表;
8、确定所述第一界面响应所述操作列表中每个操作后到达第二界面时所对应的界面操作路径;
9、基于各所述界面操作路径,确定所述待测软件的用户界面模型。
10、根据本申请实施例的软件处理方法,通过先获取待测软件在运行过程中第一界面所包括的操作列表、再确定第一界面响应该操作列表中每个操作后到达第二界面时所对应的界面操作路径的方式,实现在待测软件运行过程中生成用户界面模型的目的,相较于现有依赖于软件设计阶段绘制的原型图生成用户界面模型这一正向业务建模方式,本申请通过黑盒自动遍历实现的低成本且自动化逆向建模方式,既无需依赖软件设计阶段绘制的原型图,也无需获取待测软件的所有源代码,生成的用户界面模型既可以充分结构化描述所有业务逻辑关系,也可以直接应用于业务分析、测试和质量管理等方面,实现非研发人员和非测试人员的其他人员对任意一个应用进行分析的目的,从而大幅提高了用户界面模型的准确性,同时也大幅提高了适用范围。
11、根据本申请的一个实施例,所述获取待测软件在运行过程中遍历到的第一界面所包括的操作列表,包括:
12、基于所述第一界面的归一化界面状态信息和至少一个已遍历界面各自的归一化界面状态信息之间的差异,通过聚类合并方式或对象创建方式确定所述第一界面对应的界面对象;从所述第一界面对应的界面对象中确定所述第一界面所包括的操作列表;
13、或者,确定所述第一界面不属于所述已遍历界面,基于所述第一界面的界面截图和界面控件树创建新的界面对象,确定所述第一界面对应的界面对象;从所述第一界面对应的界面对象中确定所述第一界面所包括的操作列表。
14、根据本申请的一个实施例,所述已遍历界面的数量为至少一个,所述基于所述第一界面的归一化界面状态信息和至少一个已遍历界面各自的归一化界面状态信息之间的差异,通过聚类合并方式或对象创建方式,包括:
15、确定所述第一界面的归一化界面状态信息分别与每个所述已遍历界面的归一化界面状态信息之间的差异系数;
16、确定最小差异系数小于或等于预设差异系数阈值,基于所述第一界面的界面截图和界面控件树对所述最小差异系数对应的目标已遍历界面进行聚类合并,确定所述第一界面对应的界面对象;
17、确定所述最小差异系数大于所述预设差异系数阈值,基于所述第一界面的界面截图和界面控件树创建新的界面对象,确定所述第一界面对应的界面对象。
18、根据本申请的一个实施例,所述确定所述第一界面响应所述操作列表中每个操作后到达第二界面时所对应的界面操作路径,包括:
19、从所述操作列表中查询携带未遍历标识的第一操作;
20、确定查询到所述第一操作,确定所述第一界面响应所述第一操作后到达第二界面时所对应的界面操作路径,并将所述第一操作携带的所述未遍历标识更新为已遍历标识;
21、重复执行上述过程,直至所述操作列表中包括的所有操作均携带所述已遍历标识,确定所述第一界面响应所述操作列表中每个操作后到达第二界面时所对应的界面操作路径。
22、根据本申请的一个实施例,所述方法包括:
23、确定未查询到所述第一操作,从所述待测软件中除所述第一界面之外的其它界面所包括的操作列表中查询携带未遍历标识的第二操作;
24、确定查询到所述第二操作,确定所述第二操作所在的未遍历界面,并确定从启动界面到达所述未遍历界面的操作路径;所述启动界面为所述待测软件启动后的首个界面;
25、基于所述待测软件关闭并重启的结果,执行所述操作路径并进入所述未遍历界面,并确定进入的所述未遍历界面响应所述第二操作后到达第二界面所对应的界面操作路径。
26、根据本申请的一个实施例,所述待测软件包括同一软件在不同版本下的不同待测软件,所述方法还包括:
27、基于所述不同待测软件各自的用户界面模型,逐页对比界面控件树差异、接口调用情况差异、界面截图差异和操作位置差异中至少一项,确定版本差异测试报告。
28、根据本申请的一个实施例,所述方法还包括:
29、响应于接口描述指令,基于所述用户界面模型确定所述待测软件中与接口描述关联的第一目标界面以及所述第一目标界面所包括的操作列表,所述第一目标界面为指示测试人员重点测试的界面;
30、输出所述第一目标界面以及所述第一目标界面所包括的操作列表。
31、根据本申请的一个实施例,所述方法还包括:
32、获取预设时长内用户触发的埋点信息;
33、基于所述用户界面模型,从所述待测软件中确定存在所述埋点信息的第二目标界面以及所述第二目标界面中触发所述埋点信息的业务功能;
34、指示测试人员对所述第二目标界面中的所述业务功能进行测试。
35、根据本申请的一个实施例,所述方法还包括:
本文档来自技高网...【技术保护点】
1.一种软件处理方法,其特征在于,包括:
2.根据权利要求1所述的软件处理方法,其特征在于,所述获取待测软件在运行过程中遍历到的第一界面所包括的操作列表,包括:
3.根据权利要求2所述的软件处理方法,其特征在于,所述已遍历界面的数量为至少一个,所述基于所述第一界面的归一化界面状态信息和至少一个已遍历界面各自的归一化界面状态信息之间的差异,通过聚类合并方式或对象创建方式确定所述第一界面对应的界面对象,包括:
4.根据权利要求1至3任一项所述的软件处理方法,其特征在于,确定所述第一界面响应所述操作列表中每个操作后到达第二界面时所对应的界面操作路径,包括:
5.根据权利要求4所述的软件处理方法,其特征在于,所述方法包括:
6.根据权利要求1至3任一项所述的软件处理方法,其特征在于,所述待测软件包括同一软件在不同版本下的不同待测软件,所述方法还包括:
7.根据权利要求1至3任一项所述的软件处理方法,其特征在于,所述方法还包括:
8.根据权利要求1至3任一项所述的软件处理方法,其特征在于,所述方法还包括:<
...【技术特征摘要】
1.一种软件处理方法,其特征在于,包括:
2.根据权利要求1所述的软件处理方法,其特征在于,所述获取待测软件在运行过程中遍历到的第一界面所包括的操作列表,包括:
3.根据权利要求2所述的软件处理方法,其特征在于,所述已遍历界面的数量为至少一个,所述基于所述第一界面的归一化界面状态信息和至少一个已遍历界面各自的归一化界面状态信息之间的差异,通过聚类合并方式或对象创建方式确定所述第一界面对应的界面对象,包括:
4.根据权利要求1至3任一项所述的软件处理方法,其特征在于,确定所述第一界面响应所述操作列表中每个操作后到达第二界面时所对应的界面操作路径,包括:
5.根据权利要求4所述的软件处理方法,其特征在于,所述方法包括:
6.根据权利要求1至3任一项所述的软件处理方法,其特征在于,所述待测软件包括同一软件在不同版本下的不同待测软件,所述方法还包括:
7.根据权利要求1至3任一项所述的软件处理方法,其特征在于,所述方法...
【专利技术属性】
技术研发人员:黄文超,
申请(专利权)人:广东美的制冷设备有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。