应用测试方法和装置制造方法及图纸

技术编号:39731516 阅读:12 留言:0更新日期:2023-12-17 23:34
本公开的实施例提供的应用测试方法和装置,通过响应于获取到目标应用对应的多张设计图,分别对多张设计图进行界面检测,获取到多张设计图对应的界面元素和交互逻辑,然后基于多张设计图对应的界面元素和交互逻辑,生成目标应用对应的交互流模型,之后基于交互流模型和目标应用对应的应用平台,生成目标应用的运行代码,并基于交互流模型,对目标应用进行仿真测试,生成目标应用对应的测试代码,最后基于目标应用对应的运行代码和测试代码,运行并测试目标应用,解决了传统开发测试高度依赖专业人员技能水平的问题,减少了开发成本,提升了测试反馈速度和产品开发效率

【技术实现步骤摘要】
应用测试方法和装置


[0001]本公开涉及计算机
,具体涉及图像处理
和测试
,尤其涉及应用测试方法和装置


技术介绍

[0002]随着科学技术的不断发展,越来越多的应用随之出现,前端应用开发流程包括设计用户界面,代码实现,和测试界面
(UI)
,并在上线运行后根据需求变更,这个过程循环往复直到满足最终的目标

其中,一方面开发和测试工作随着
UI
迭代的愈加频繁,其重要性日益凸显;另一方面,开发和测试存在着大量繁重且重复的工作,需要专业的技术人员消耗大量时间和精力,大大增加了开发成本和拖累开发效率

目前的前端应用的开发和测试主要还是通过人工实现,近些年出现了拖拽式配置平台生成应用和测试代码的技术方案,通过图形化的方式降低对测试人员技能水平的要求

这在一定程度上缓解了传统前端应用开发和测试方法的缺陷,但效果和成本依然依赖于技术人员的水平


技术实现思路

[0003]本公开的实施例提出了一种应用测试方法

装置

电子设备和计算机可读介质

[0004]第一方面,本公开的实施例提供了一种任务处理方法,该方法包括:响应于获取到目标应用对应的多张设计图,分别对多张设计图进行界面检测,获取到多张设计图对应的界面元素和交互逻辑;基于多张设计图对应的界面元素和交互逻辑,生成目标应用对应的交互流模型;基于交互流模型和目标应用对应的应用平台,生成目标应用的运行代码;基于交互流模型,对目标应用进行仿真测试,生成目标应用对应的测试代码;基于目标应用对应的运行代码和测试代码,运行并测试目标应用

[0005]在一些实施例中,响应于获取到目标应用对应的多张设计图,分别对多张设计图进行界面检测,获取到多张设计图对应的界面元素和交互逻辑,包括:响应于获取到目标应用对应的多张设计图,分别对多张设计图进行图形化组件检测,得到多张设计图对应的图形组件和图形组件对应的第一交互逻辑;分别对多张设计图进行文本组件检测,得到多张设计图对应的文本组件和文本组件对应的第二交互逻辑;基于图形组件和文本组件,生成多张设计图对应的页面布局;基于图形组件和文本组件,对多张设计图进行数据合并,获取到多张设计图对应的界面元素和交互逻辑

[0006]在一些实施例中,基于多张设计图对应的界面数据,生成目标应用对应的交互流模型,包括:建立初始交互流模型;基于多张设计图,生成初始交互流模型的屏幕容器;基于多张设计图对应的页面布局,生成初始交互流模型的布局容器;基于图形组件和文本组件,生成初始交互流模型的组件容器;基于第一交互逻辑和第二交互逻辑,生成初始交互流模型对应的事件和导航流;基于初始交互流模型的屏幕容器

布局容器

事件和导航流,生成目标应用对应的交互流模型

[0007]在一些实施例中,基于交互流模型和目标应用对应的应用平台,生成目标应用的
运行代码,包括:基于目标应用对应的应用平台,对交互流模型进行模型转换,得到与应用平台相关的平台相关模型;将平台相关模型输入代码生成器,生成目标应用的运行代码

[0008]在一些实施例中,该方法还包括:基于交互流模型和目标应用的当前页面,创建与当前页面对应的当前触发事件集合;基于目标应用的历史运行数据,建立目标应用对应的概率模型;基于当前触发事件集合

概率模型和强化学习模型,确定每个当前触发事件对应的目标事件;基于目标事件,更新历史运行数据

交互流模型和当前触发事件集合

[0009]在一些实施例中,基于目标事件,更新历史运行数据

交互流模型和当前触发事件集合,包括:针对当前页面执行目标事件,获取当前页面的当前页面状态;基于当前页面状态,获取当前页面的可触发事件;基于当前页面状态和目标事件,更新历史运行数据;基于当前页面的可触发事件,更新当前触发事件集合;基于当前页面状态和当前页面的可触发事件,更新交互流模型

[0010]在一些实施例中,基于当前页面状态和当前页面的可触发事件,更新交互流模型,包括:响应于确定更新当前触发事件集合,判断是否满足页面探索终止条件;响应于确定满足页面探索终止条件,基于当前页面状态和当前页面的可触发事件,更新交互流模型

[0011]在一些实施例中,基于当前页面状态和当前页面的可触发事件,更新交互流模型,包括:响应于获取到目标应用对应的新的设计图,对新的设计图进行界面检测,获取到新的设计图对应的新的界面元素和新的交互逻辑;基于新的界面元素和新的交互逻辑

当前页面状态和当前页面的可触发事件,更新交互流模型

[0012]在一些实施例中,该方法还包括:响应于获取到目标应用对应的新的设计图,对新的设计图进行界面检测,获取到新的设计图对应的新的界面元素和新的交互逻辑;从多张设计图中确定新的设计图对应的设计图;基于设计图对应的界面元素

交互逻辑和新的设计图对应的新的界面元素

新的交互逻辑,更新交互流模型

[0013]第二方面,本公开的实施例提供了一种应用测试装置,该装置包括:检测模块,被配置成响应于获取到目标应用对应的多张设计图,分别对多张设计图进行界面检测,获取到多张设计图对应的界面元素和交互逻辑;第一生成模块,被配置成基于多张设计图对应的界面元素和交互逻辑,生成目标应用对应的交互流模型;第二生成模块,被配置成基于交互流模型和目标应用对应的应用平台,生成目标应用的运行代码;第三生成模块,被配置成基于交互流模型,对目标应用进行仿真测试,生成目标应用对应的测试代码;测试模块,被配置成基于目标应用对应的运行代码和测试代码,运行并测试目标应用

[0014]在一些实施例中,检测模块,进一步被配置成:响应于获取到目标应用对应的多张设计图,分别对多张设计图进行图形化组件检测,得到多张设计图对应的图形组件和图形组件对应的第一交互逻辑;分别对多张设计图进行文本组件检测,得到多张设计图对应的文本组件和文本组件对应的第二交互逻辑;基于图形组件和文本组件,生成多张设计图对应的页面布局;基于图形组件和文本组件,对多张设计图进行数据合并,获取到多张设计图对应的界面元素和交互逻辑

[0015]在一些实施例中,第一生成模块,进一步被配置成:建立初始交互流模型;基于多张设计图,生成初始交互流模型的屏幕容器;基于多张设计图对应的页面布局,生成初始交互流模型的布局容器;基于图形组件和文本组件,生成初始交互流模型的组件容器;基于第一交互逻辑和第二交互逻辑,生成初始交互流模型对应的事件和导航流;基于初始交互流
模型的屏幕容器

布局容器

事件和导航流,生成目标应用对应的交互流模型...

【技术保护点】

【技术特征摘要】
1.
一种应用测试方法,所述方法包括:响应于获取到目标应用对应的多张设计图,分别对所述多张设计图进行界面检测,获取到所述多张设计图对应的界面元素和交互逻辑;基于所述多张设计图对应的界面元素和交互逻辑,生成所述目标应用对应的交互流模型;基于所述交互流模型和所述目标应用对应的应用平台,生成所述目标应用的运行代码;基于所述交互流模型,对所述目标应用进行仿真测试,生成所述目标应用对应的测试代码;基于所述目标应用对应的运行代码和测试代码,运行并测试所述目标应用
。2.
根据权利要求1所述的方法,其中,所述响应于获取到目标应用对应的多张设计图,分别对所述多张设计图进行界面检测,获取到所述多张设计图对应的界面元素和交互逻辑,包括:响应于获取到目标应用对应的多张设计图,分别对所述多张设计图进行图形化组件检测,得到所述多张设计图对应的图形组件和所述图形组件对应的第一交互逻辑;分别对所述多张设计图进行文本组件检测,得到所述多张设计图对应的文本组件和所述文本组件对应的第二交互逻辑;基于所述图形组件和所述文本组件,生成所述多张设计图对应的页面布局;基于所述图形组件和所述文本组件,对所述多张设计图进行数据合并,获取到所述多张设计图对应的界面元素和交互逻辑
。3.
根据权利要求2所述的方法,其中,所述基于所述多张设计图对应的界面数据,生成所述目标应用对应的交互流模型,包括:建立初始交互流模型;基于所述多张设计图,生成所述初始交互流模型的屏幕容器;基于所述多张设计图对应的页面布局,生成所述初始交互流模型的布局容器;基于所述图形组件和所述文本组件,生成所述初始交互流模型的组件容器;基于所述第一交互逻辑和所述第二交互逻辑,生成所述初始交互流模型对应的事件和导航流;基于所述初始交互流模型的屏幕容器

布局容器

事件和导航流,生成所述目标应用对应的交互流模型
。4.
根据权利要求1所述的方法,所述基于所述交互流模型和所述目标应用对应的应用平台,生成所述目标应用的运行代码,包括:基于所述目标应用对应的应用平台,对所述交互流模型进行模型转换,得到与所述应用平台相关的平台相关模型;将所述平台相关模型输入代码生成器,生成所述目标应用的运行代码
。5.
根据权利要求1所述的方法,所述方法还包括:基于所述交互流模型和所述目标应用的当前页面,创建与所述当前页面对应的当前触发事件集合;基于所述目标应用的历史运行数据,建立所述目标应用对应的概率模型;
基于所述当前触发事件集合

所述概率模型和强化学习模型,确定每个当前触发事件对应的目标事件;基于所述目标事件,更新所述历史运行数据

所述交互流模型和所述当前触发事件集合
。6.
根据权利要求5所述的方法,其中,所述基于所述目标事件,更新所述历史运行数据

所述交互流模型和所述当前触发事件集合,包括:针对所述当前页面执行所述目标事件,获取所述当前页面的当前页面状态;基于所述当前页面状态,获取所述当前页面的可触发事件;基于所述当前页面状态和所述目标事件,更新所述历史运行数据;基于所述当前页面的可触发事件,更新所述当前触发事件集合;基于所述当前页面状态和所述当前页面的可触发事件,更新所述交互流模型
。7.
根据权利要求6所述的方法,其中,所述基于所述当前页面状态和所述当前页面的可触发事件,更新所述交互流模型,包括:响应于确定更新所述当前触发事件集合,判断是否满足页面探索终止条件;响应于确定满足页面探索终止条件,基于所述当前页面状态和所述当前页面的可触发事件,更新所述交互流模型
。8.
根据权利要求6所述的方法,其中,所述基于所述当前页面状态和所述当前页面的可触发事件,更新所述交互流模型,包括:响应于获取...

【专利技术属性】
技术研发人员:李轶宇袁芳辰张海鹏陈仁益宋浩杰刘明
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:

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

1