用例生成方法及装置与流程

文档序号:26629603发布日期:2021-09-14 22:41阅读:114来源:国知局
用例生成方法及装置与流程

1.本说明书涉及计算机技术领域,特别涉及一种用例生成方法。本说明书同时涉及一种用例生成装置,一种计算设备,以及一种计算机可读存储介质。


背景技术:

2.随着信息技术的发展,应用软件产品的应用日益广泛,影响着软件产品用户的工作、学习和生活等诸多领域,而应用软件产品在设计或运行时,需要对应用软件可靠性进行测试,而自动化测试就是应用软件测试技术常见的测试手段之一,针对自动化测试用例的生成与维护一直是应用软件测试工作绕不开的话题。
3.现有技术中的自动化测试用例生成方式,无法摆脱对开发提测的依赖,需要在应用软件开发完成并进行提测后,测试人员才能通过对应的提测app和自动化工具进行自动化测试用例的编写与维护,降低了应用软件测试的效率,增加了应用软件测试的成本。
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.将所述预测元素、所述预测元素的属性信息与所述图像元素、所述图像元素的属性信息进行匹配,建立所述预测图像与所述至少两个目标图像的关联关系,并基于所述关联关系确定所述预测图像对应的场景信息;
36.基于所述预测图像对应的场景信息确定所述预测图像对应的所述目标用例,并通过所述目标用例对所述预测对象进行测试。
37.可选地,所述通过所述目标用例对待测试对象进行测试之后,还包括:
38.确定所述至少两个目标图像的第一图像数量;
39.基于所述测试图像与所述至少两个目标图像的关联关系,统计与所述测试图像不存在关联关系的所述至少两个目标图像的第二图像数量;
40.基于所述第一图像数量以及所述第二图像数量确定所述测试对象的覆盖率。
41.可选地,所述获得所述至少两个目标图像对应的场景信息之后,还包括:
42.基于所述场景信息确定基线场景信息条件,将满足所述基线场景信息条件的场景信息确定为基线场景信息。
43.根据本说明书实施例的第二方面,提供了一种用例生成装置,包括:
44.接收模块,被配置为接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息;
45.获取模块,被配置为将所述图像元素以及所述图像元素的属性信息输入场景识别模型,获得所述至少两个目标图像对应的场景信息;
46.生成模块,被配置为基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。
47.根据本说明书实施例的第三方面,提供了一种计算设备,包括:
48.存储器和处理器;
49.所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:
50.接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息;
51.将所述图像元素以及所述图像元素的属性信息输入场景识别模型,获得所述至少两个目标图像对应的场景信息;
52.基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。
53.根据本说明书实施例的第四方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该计算机可执行指令被处理器执行时实现任意所述用例生成方法的步骤。
54.本说明书提供的用例生成方法,接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息;再通过将所述图像元素以及所述图像元素的属性信息输入场景识别模型,从而获得所述至少两个目标图像对应的场景信息;再基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。具体地,所述方法通过获取接收到的至少两个目标图像中的交互对象、图像元素以及图像元素的属性信息,并通过将图像元素以及图像元素的属性信息输入场景识别模型,快速、准确的获得至少两个目标图像对应的场景信息,降低了生成目标用例所需的时间成本与人力成本,提高了生成目标用例的效率;并且基于场景信息与交互对象对至少两个目标图像进行执行流编排,进而生成目标用例,解决了依赖开发提测进行自动化测试用例生成的问题,实现了在应用软件开发阶段,即可提前通过目标图像对目标用例进行生成,并通过目标用例对进行提测后的应用软件进行测试,进一步提高了应用软件测试工作的效率。
附图说明
55.图1是本说明书一实施例提供的一种用例生成方法的流程图;
56.图2是本说明书一实施例提供的一种应用于生成购物软件的ui自动化测试用例场景下的用例生成方法的处理流程图;
57.图3是本说明书一实施例提供的一种用例生成装置的结构示意图;
58.图4是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
59.在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
60.在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
61.应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
62.首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
63.自动化测试:通过一些脚本编写自动化用例,自动完成测试工作。
64.无线端自动化测试:针对app,h5产品的自动化测试能力。
65.用例编排:一种通过页面操作生成自动化测试用例的方式。
66.兼容性测试:一种无线端多机型适配的测试手段。
67.覆盖率:通常被用来衡量测试的充分性和完整性,无线端执行单元测试,通过单元测试结束之后执行代码行覆盖情况或者场景覆盖情况,以此判断测试覆盖度。
68.视觉图:是指在完成产品视觉设计之后,用于向用户展示出产品原型的图片,视觉图中会展示出产品图、产品的文案、产品的交互对象以及产品中的动画等重要信息,便于开发人员基于该视觉图包含的重要信息进行产品的开发,该产品具体可以为app、h5产品。
69.实现图:是指在开发人员基于视觉图中的信息完成产品的开发之后,产品向用户所展示的程序界面的图片,该界面中包含产品的文案,与用户产生交互的交互对象以及产品的动画等内容;产品具体可以为app、h5产品,相应地,界面具体可以为app的ui界面、h5产品中的页面。
70.视觉走查:无线端产品开发测试完成后,需要将视觉图和需求实现图做像素、颜色以及文案等信息的对比。
71.图像识别:通过需求实现图,和视觉图元素做对比分析,分析出从视觉图中裁减的元素在需求实现图中对应的位置。
72.精准测试:通过代码变更分析,分析出影响哪些自动化测试用例,减少自动化的执行成本。并且通过用例执行推荐能力,提示测试开发人员有哪些用例或者代码没有覆盖到。
73.uiautomator:是一款用java(计算机编程语言)编写的ui自动化测试框架。
74.selenium:是一个用于web(全球广域网)应用程序测试的工具。
75.xctest:是一种自动化测试框架。
76.ui:用户交互界面(user interface),简称为ui;用户交互界面是系统和用户之间进行交互和信息交换的媒介,它实现信息的内部形式与人类可以接受形式之间的转换。用户交互界面是介于用户与硬件而设计彼此之间交互沟通相关软件,目的在使得用户能够方便有效率地去操作硬件以达成双向之交互,完成所希望借助硬件完成之工作。
77.h5:是指html5,简称为h5,是构建web内容的一种语言描述方式。
78.app:应用程序(application),简称为app,一般指手机软件。
79.ios系统:是一种移动操作系统。
80.mock:是指在测试过程中,对于一些不容易构造/获取的对象,通过创建一个mock对象来模拟对象的行为。
81.插件:是一种遵循一定规范的应用程序接口编写出来的程序,其只能运行在程序规定的系统平台下(可能同时支持多个平台),而不能脱离指定的平台单独运行。
82.提测:又称为提交测试,是指开发人员完成产品的开发与自测后,提交给测试人员进行测试。
83.现有技术中的无线端自动化测试方案是通过uiautomator、selenium、xctest等框架,分别提供安卓,h5,ios系统的自动化测试能力,现有技术中的自动化测试能力需要编写脚本(通过页面元素的标识,路径,坐标等信息)进行页面点击,输入,滑动等操作,但这样的自动化测试框架存在以下几个缺陷。
84.1、自动化用例生成时机滞后:自动化维护需要在开发完成之后才能进行,只有完成开发并进入测试阶段,测试人员才能获取到页面元素的标识,路径或者坐标等信息,并基于页面元素的标识,路径或者坐标等信息进行自动化测试脚本的编写。
85.2、自动化维护成本高:当页面发生变更的时候,需要及时的维护自动化测试脚本,并更改对应的页面元素信息。
86.3、无法进行产品场景的梳理和整合:视觉图信息就是产品展示给用户的所有信息(包括颜色、图案、坐标以及交互等重要信息),在产品迭代过程中,无法对开发充分性和测试的场景覆盖情况进行评估。
87.4、随着应用场景的复杂度提高,需要维护产品过多,用例的极度膨胀;而且无线端自动化测试的执行效率较差,通过代码变更精确的找到对应用例进行精确的执行推荐,现有技术的自动化测试还无法满足此需求。
88.基于此,在本说明书中,提供了一种用例生成方法,本说明书同时涉及一种用例生成装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
89.图1示出了根据本说明书一实施例提供的一种用例生成方法的流程图,具体包括以下步骤:
90.步骤102:接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息。
91.其中,目标图像可以理解为用于生成目标用例的图像,比如任意一种类型的、包括
按钮、图像、文案以及动画等任意一种元素的图像,具体可以为视觉图。
92.交互对象可以理解为用户能够与终端设备进行交互操作的对象,在目标图像为视觉图的情况下,交互对象可以理解为视觉图中的用户能够实现点击、输入或滑动等交互动作的对象,比如按钮、输入框。
93.图像元素可以理解为构成目标图像的元素,在目标图像为视觉图的情况下,该图像元素可以理解为视觉图所包含的图像、动画或者文案等元素。相应地,图像元素的属性信息可以理解为图像、动画或者文案等图像元素的坐标、尺寸、颜色等信息。
94.具体地,用例生成平台会接收至少两个目标图像,并通过部署在用例生成平台上的程序获取至少两个目标图像中的交互对象、图像元素以及该图像元素的属性信息;该部署在用例生成平台上的程序可以是实现获取目标图像中交互对象、图像元素以及图像元素的属性信息的插件。
95.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对获取接收到的至少两个目标对象中的交互对象、图像元素以及图像元素的属性信息进行详细说明;比如,应用于生成购物软件的ui自动化测试用例场景中,相应地,目标图像可以是视觉设计人员设计完成的购物软件的视觉图;交互对象可以是购物软件的视觉图中可实现购买功能的按钮;图像元素可以是购物软件的视觉图中的图像、文案或者动画等元素,比如视觉图中的图像可以是购买成功时向用户展示的图像、视觉图中的文案可以是视觉图中的文字;图像元素的属性信息可以是视觉图中的图像坐标信息。在实际应用中,视觉设计人员完成视觉图的设计后,开发人员会根据该视觉图对购物软件进行软件开发。
96.用例生成平台能够在购物软件进行软件开发过程中,接收到测试人员上传的至少两个视觉图,并通过部署在用例生成平台上的插件对至少两个视觉图进行识别,获取到至少两个视觉图中包含的用户能够点击、输入的区域信息,比如按钮信息、输入框区域信息等,至少两个视觉图中包含的图像、文案以及动画等图像元素,以及至少两个视觉图中包含的图像元素的坐标、颜色或者尺寸等属性信息。
97.在本技术一实施例中,所述获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息之后,还包括:
98.接收针对所述图像元素的标注请求,其中,所述标注请求中携带有图像元素标识;
99.根据所述图像元素标识从所述图像元素中确定待标注的图像元素,并为所述待标注的图像元素进行类型标注。
100.其中,标注请求可以理解为针对特定的图像元素进行标注的请求。
101.图像元素标识可以理解为表征图像元素的标识,每个图像元素标识可唯一表征一个图像元素;实际应用中,图像元素标识可以是由数字、字母或者一些特殊字母组成的可唯一表征一个图像元素的字符串,在本说明书实施例中,该图像标识可以是图像元素的名称、图像元素的编号。
102.为待标注的图像元素进行类型标注可以理解为将待标注的图像元素标注为特定的类型,该类型具体可以为有效类型、无效类型;在本说明书实施例中,被标注为有效的图像元素在后续通过场景识别模型获得场景信息的过程中,是能够被使用到的,例如,仅将标注为有效的图像元素以及标注为有效的图像元素的属性信息输入场景识别模型,获得至少两个目标图像对应的场景信息。而被标注为无效的图像元素则不会被使用到的。
103.具体地,用例生成平台在获取到至少两个目标图像中的交互对象、图像元素以及该图像元素的属性信息之后,能够接收到针对图像元素的标注请求,该标注请求中携带有图像元素标识;用例生成平台根据标注请求中携带的图像元素标识从多个图像元素中确定出待标注的图像元素,并根据标注请求对确定的待标注的图像元素进行类型标注。
104.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对为图像元素进行类型标注做进一步详细说明,比如,应用于生成购物软件的ui自动化测试用例场景中,在本说明书实施例中,图像元素可以为视觉图中的图像,相应地,图像元素标识可以为图像名称。
105.用例生成平台能够通过特定的插件识别出至少两个购物软件的视觉图中的交互对象、图像元素以及该图像元素的属性信息,但用例生成平台识别出的按钮信息、图像以及该图像的属性信息,可能出现识别到的图像不清晰或者视觉图中一个图像被识别成多个相同的图像等问题。基于此,用例生成平台能够接收到用户发送的针对于图像元素的标注请求,其中该标注请求中携带有图像元素名称;在实际应用中,根据标注请求中携带的图像元素名称确定出对应的图像元素,该图像元素可以为视觉图中不清晰图像、视觉图中坐标信息出现错误的图像或者文案。
106.用例生成平台基于该标注请求中携带的图像名称,从图像元素中找到与该图像名称对应的图像,并将该图像作为待标注图像后;用例生成平台基于标注请求将待标注图像标注为无效图像。
107.在说明书一实施例中,当接收到的目标图像存在无效的情况下,用例生成平台还可以基于接收到的针对目标图像的标注请求对目标图像进行标注,例如,目标图像可以为视觉图,用例生成平台能够接收到针对视觉图的标注请求,该请求中携带有视觉图标识;该视觉图标识可以为视觉图的名称、编号等。
108.用例生成平台基于该视觉图的标识确定出待标注的视觉图,并为该待标注的视觉图进行类型标注,该类型可以为无效、错误等,从而避免因目标图像错误或者无效等问题导致目标用例生成失败,提高了用例生成平台生成目标用例的效率。
109.在实际应用中,目标图像存在无效的情况可以为视觉设计人员设计完成的至少两个目标图像后,开发人员在基于该至少两个目标图像进行产品开发的过程中,并未将所有的目标图像实现出来,例如,视觉设计人员设计完成的目标图像为十个,但开发人员在产品开发的过程中,仅完成八个目标图像的软件开发;在此情况下,未被开发人员实现的两个目标图像可以被标注为无效。
110.在说明书一实施例中,用例生成平台还可以基于接收到的删除请求对目标图像或图像元素进行删除,例如,用例生成平台能够接收到针对目标图像的删除请求,该删除请求中携带有目标图像标识;用例生成平台基于该目标图像标识确定出待删除的目标图像,并将该待删除的目标图像进行删除。或者,用例生成平台还能够接收针对图像元素的删除请求,该删除请求中携带有图像元素标识;用例生成平台基于该图像元素标识确定出待删除的图像元素,并将该待删除的图像元素进行删除。
111.本说明书实施例,通过接收到的标注请求中的图像元素标识,从图像元素中确定出待标注的图像元素,并对待标注的图像元素进行类型标注,提高了图像元素的精确度,降低了因为图像元素不清晰或者不精确等问题造成目标用例生成失败的风险,提高了用例生
成平台生成目标用例的效率。
112.步骤104:将所述图像元素以及所述图像元素的属性信息输入场景识别模型,获得所述至少两个目标图像对应的场景信息。
113.其中,场景信息可以理解为目标图像对应的应用场景信息,比如,目标图像可以为购物软件的视觉图,当一个视觉图是购物软件中的商品展示界面的视觉图的情况下,该视觉图对应的场景信息可以为商品展示场景;当一个视觉图是购物软件中的购买结果界面的视觉图的情况下,该视觉图对应的场景信息可以为购买结果场景。
114.场景识别模型可以理解为能够识别出目标图像对应的场景信息的模型,在目标图像为购物软件的视觉图的情况下,场景识别模型能够基于视觉图中的图像元素以及图像元素的属性信息,识别出视觉图对应的应用场景,该应用场景可以是商品展示场景、购买结果场景。
115.具体地,用例生成平台在获得至少两个目标图像中的图像元素以及图像元素的属性信息之后,将至少两个目标图像中的图像元素以及图像元素的属性信息输入到场景识别模型中,该场景识别模型能够根据目标图像的图像元素以及图像元素的属性信息识别出每个目标图像的场景信息并输出;用例生成平台基于场景识别模型的输出获得至少两个目标图像对应的场景信息。
116.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对通过场景识别模型获得至少两个目标图像对应的场景信息做进一步说明,比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台在获得视觉图中的图像、文案以及动画等图像元素,以及该图像元素对应的颜色、坐标等属性信息之后,将该图像元素以及该图像元素对应的属性信息输入到场景识别模型中,该场景识别模型能够基于图像元素以及该图像元素对应的属性信息识别出每个视觉图对应的场景信息。
117.在本说明书一实施例中,所述获得所述至少两个目标图像对应的场景信息之后,还包括:
118.接收场景信息生成请求,其中,所述场景信息生成请求中携带有场景信息标识;
119.基于所述场景信息标识从所述场景信息中确定初始场景信息;
120.将所述初始场景信息进行关联,以生成目标场景信息。
121.其中,场景信息生成请求可以理解为指示用例生成平台生成目标场景信息的请求。
122.场景信息标识可以理解为表征场景信息的标识,每个场景信息标识可唯一表征一个场景信息,实际应用中,场景信息标识可以是由数字、字母或者一些特殊字母组成的可唯一表征一个场景信息的字符串,在本说明书实施例中,所述场景信息标识可以为场景信息的名称、编号等。
123.初始场景信息可以理解为与场景信息生成请求中携带的场景信息标识相对应的,但未进行关联的场景信息。
124.将所述初始场景信息进行关联可以理解为将满足预设条件的多个场景信息划分为同一种场景类型。
125.具体地,用例生成平台在通过场景识别模型,获得至少两个目标图像对应的场景信息之后,能够接收到场景信息生成请求,该场景信息生成请求中携带有场景信息标识;用
例生成平台基于场景信息标识从至少两个目标图像对应的场景信息中确定出初始场景信息;并将该初始场景信息进行关联,从而生成目标场景信息。
126.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对生成目标场景信息做进一步详细说明,比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台能够通过场景识别模型获得每个视觉图对应的场景信息,但获取到的多个场景信息可能存在一定的联系,比如,至少两个视觉图中包括“购买成功”视觉图、“购买失败”视觉图以及“购买进行中”视觉图,相应地,通过场景识别模型可以获得该视觉图对应的场景信息为“购买成功”、“购买失败”以及“购买进行中”。但“购买成功”场景信息、“购买失败”场景信息以及“购买进行中”场景信息应同属于“购买结果”场景信息之中,若不将“购买成功”场景信息、“购买失败”场景信息以及“购买进行中”场景信息进行关联生成“购买结果”场景信息,后续在进行目标用例编排的过程中,可能会无法将“购买成功”场景信息、“购买失败”场景信息以及“购买进行中”场景信息全部覆盖到,也即是说,无法对其进行编排并生成目标用例。
127.在此情况下,用例生成平台能够接收到用户发送的场景信息生成请求,该请求中携带有场景信息标识,比如场景信息的名称。
128.用例生成平台基于场景信息标识场景识别模型识别出的场景信息中,找到与场景信息标识对应的初始场景信息,比如,“购买成功”场景信息、“购买失败”场景信息以及“购买进行中”场景信息。
129.用例生成平台在确定初始场景信息之后,将该初始场景信息关联在一起,从而生成目标场景信息,比如“购买结果”场景信息。
130.本说明书实施例中,用例生成平台通过接收到的场景信息生成请求中携带的场景信息标识;从场景信息中确定出初始场景信息;并对初始场景信息进行关联,以生成目标场景信息,提高了生成目标用例的精确度,避免了部分场景信息未被正确的编排,导致后续通过目标用例对待测试对象进行测试的过程中,测试覆盖率出现错误的问题,提高了测试的效率。
131.在本技术一实施例中,所述生成目标用例之后,还包括:
132.基于所述场景信息确定基线场景信息条件,将满足所述基线场景信息条件的场景信息确定为基线场景信息。
133.其中,基线场景可以理解为至少两个目标图像对应的场景信息中较为重要的场景信息。
134.基线场景信息条件可以理解为将场景信息确定为基线场景信息的条件,该基线场景信息条件可以为进行执行流编排次数超过编排阈值的目标图像对应的场景信息,该编排阈值可以为10次。
135.具体地,用例生成平台基于场景信息确定基线场景信息条件,将满足基线场景信息条件的场景信息确定为基线场景信息。
136.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对将满足基线场景信息条件的场景信息确定为基线场景信息做进一步详细说明,比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台在对至少两个目标图像进行执行流编排,生成目标用例之后,统计出视觉图进行执行流编排的次数,在该次数满足编排阈值的情
况下,将该视觉图对应的场景信息确定为基线场景信息。
137.本说明书实施例中,基于场景信息确定基线场景信息条件,并将满足基线场景信息条件的场景信息确定为基线场景信息。便于后续进行回归测试时,能够将该基线场景信息以及该基线场景信息对应的测试对象能够被进行回归测试,实现精准的进行软件测试。
138.步骤106:基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。
139.其中,执行流可以理解为用户以预设的执行顺序对多个页面进行交互,从而实现特定需求的过程;比如以购物场景为例,用户的特定需求为物品购买;首先用户需要在购物软件的商品页面进行商品浏览,并通过点击商品的“加入购物车”按钮,将需要购买的商品加入到购物车当中;其次,点击商品页面的“购物车”按钮进入到购物软件的购物车界面,并点击购物车页面中的“购买”按钮,进入到购物软件的付款界面,当用户在购物软件的付款页面完成支付操作之后,即完成了一次物品的购买;而用户通过预设的执行顺序点击不同页面的交互按钮,实现一次物品购买的执行过程可以理解为执行流。
140.在目标图像为视觉图的情况下,执行流编排可以理解为通过执行流对至少两个视觉图进行排列的过程,从而通过视觉图对用户以预设的执行顺序对多个页面进行交互,实现特定需求的执行过程进行表示。比如,在本说明书实施例中目标图像可以为视觉设计人员设计完成的购物软件视觉图,而购物软件的一个执行物品购买的执行过程可以为用户首先在购物软件的商品页面将商品加入到购物车中之后,点击商品页面的“购物车”按钮进入到购物软件的购物车界面,并点击购物车页面中的“购买”按钮,进入到购物软件的付款界面,当用户在购物软件的付款页面完成支付操作后显示购物成功页面,即完成了物品的购买。根据该购物软件的物品购买的执行过程,基于购物软件视觉图的场景信息确定出商品界面、购物车界面、付款界面以及购买结果界面对应的视觉图,将该视觉图按照购物过程中购物软件界面的执行顺序进行排列;并通过每个视觉图的按钮将多个视觉图进行关联,具体可以为将商品界面对应的商品界面视觉图中的“购物车”按钮与购物车界面对应的购物车界面视觉图进行关联,将购物车界面对应的视觉图中的“购买”按钮与付款界面对应的付款界面视觉图进行关联;将付款界面对应的视觉图中的“支付”按钮与购买结果界面对应的购买结果界面视觉图进行关联。也即是说,进行执行流编排可以理解为按照购物过程中购物软件界面的执行顺序对购物软件视觉图进行排列,并通过每个视觉图的按钮将多个视觉图进行关联。
141.目标用例可理解为用于对特定对象进行测试的用例,具体可以但不限于ui自动化测试用例、提成准入用例;在本说明书实施例中,通过对视觉设计人员设计完成的产品视觉图进行执行流编排,即可生成目标用例。
142.具体地,用例生成平台在获取到至少两个目标图像中的交互对象,以及将至少两个目标图像中的图像元素以及图像元素的属性信息输入场景识别模型,获得至少两个目标图像对应的场景信息之后,能够基于场景信息与交互对象对至少两个目标图像进行执行流编排,生成目标用例。
143.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对基于场景信息与交互对象对至少两个目标图像进行执行流编排,生成目标用例做进一步详细说明,比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台基于获取到购物软
件视觉图的场景信息以及交互对象,并按照购物软件的物品购买的执行过程对购物软件视觉图进行排列,比如,基于购物软件的执行过程,按照先后顺序将商品界面视觉图、购物车界面视觉图、付款界面视觉图以及购买结果界面视觉图进行排列;并通过该视觉图中的交互对象将多个ui界面图进行关联,比如将商品界面视觉图中的“购物车”按钮与购物车界面视觉图进行关联,将购物车界面视觉图中的“购买”按钮与付款界面视觉图进行关联;将付款界面视觉图中的“支付”按钮与购买结果界面视觉图进行关联;从而生成购物软件的ui自动化测试用例。
144.本技术一实施例中,所述场景信息包括至少一个;
145.相应地,所述基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例,包括:
146.基于每个场景信息从所述至少两个目标图像中确定,与所述每个场景信息对应的编排图像;
147.从所述交互对象中确定所述每个场景信息对应的编排图像中的交互对象;
148.基于所述每个场景信息对应的编排图像中的交互对象对所述每个场景信息对应的编排图像进行执行流编排,生成至少一个目标用例。
149.其中,编排对象可以理解为需要进行执行流编排的目标图像。
150.具体地,用例生成平台获得场景信息至少包括一个,相应地,用例生成平台基于场景信息与交互对象对至少两个目标图像进行执行流编排,生成目标用例,包括:用例生成平台基于每个场景信息从至少两个目标图像中确定与每个场景信息对应的编排图像;并从交互对象中确定每个场景信息对应的编排图像中的交互对象;基于每个场景信息对应的编排图像中的交互对象对每个场景信息对应的编排图像进行执行流编排,生成至少一个目标用例。
151.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对基于每个场景信息对应的编排图像中的交互对象对每个场景信息对应的编排图像进行执行流编排,生成至少一个目标用例做进一步详细说明;比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台通过获取到的场景信息从购物软件的至少两个视觉图中确定出需要进行执行流编排的编排视觉图;并且,从至少两个视觉图的交互对象中,确定出编排视觉图对应的交互对象。
152.用例生成平台在获取到编排视觉图、编排视觉图的场景信息以及编排视觉图对应的交互对象之后,按照购物软件的物品购买的执行过程对编排视觉图进行排列,比如,基于购物软件的执行过程,按照先后顺序将商品界面视觉图、购物车界面视觉图、付款界面视觉图以及购买结果界面视觉图进行排列;并通过该视觉图中的交互对象将多个ui界面图进行关联,比如将商品界面视觉图中的“购物车”按钮与购物车界面视觉图进行关联,将购物车界面视觉图中的“购买”按钮与付款界面视觉图进行关联;将付款界面视觉图中的“支付”按钮与购买结果界面视觉图进行关联;从而生成至少一个购物软件的ui自动化测试用例。
153.本说明书实施例中,用例生成平台通过场景信息从目标图像中确定出编排对象、并从交互对象中确定出编排对象对应的交互信息,从而基于该交互对象对编排图像进行执行流编排,生成至少一个目标用例,实现了在开发阶段能够基于目标图像进行目标用例的生成,解决了依赖开发提测进行自动化测试用例生成的问题,提高了生成目标用例的效率,
进一步提高了软件测试效率,并且通过对目标图像进行执行流编排的方式是可视化的用例操作,摒弃掉现有技术中通过脚本编排的方式,有效的降低了自动化测试用例的编写难度,节省了用例编写的人工成本。
154.本技术一实施例中,所述基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例之后,还包括:
155.接收测试对象,并确定所述测试对象的测试图像;
156.将所述测试图像输入图像识别模型,获得所述测试图像的测试元素、以及所述测试元素的属性信息;
157.将所述测试元素、所述测试元素的属性信息与所述图像元素、所述图像元素的属性信息进行匹配,建立所述测试图像与所述至少两个目标图像的关联关系,并基于所述关联关系确定所述测试图像对应的场景信息;
158.基于所述测试图像对应的场景信息确定所述测试图像对应的所述目标用例,并通过所述目标用例对所述测试对象进行测试。
159.其中,测试对象可以理解为需要通过目标用例进行测试的对象,具体可以包括但不限于软件程序、h5产品;在实际应用中,该测试对象是开发人员基于视觉图完成软件开发并进行提测后的产品,该产品中包括开发人员对视觉图进行软件开发生成的产品界面。
160.在测试对象为软件程序的情况下,测试图像可以理解为软件程序的用户交互界面的图像,也即是实现图;该测试图像中包含软件程序的用户交互界面的文案、图像以及动画等重要信息;相应地,测试元素可以理解为测试图像中的图像元素,比如用户交互界面的文案、图像以及动画;测试元素的属性信息可以理解为测试图像中的图像元素的属性信息,比如测试元素的颜色、坐标等。
161.图像识别模型可以理解为用于识别出图像中文案、图像以及动画等元素以及该元素对应的属性信息的模型。在本说明书实施例中,获取到测试图像后,将该测试图像输入至图像识别模型中,能够获取到测试图像中包含的测试元素以及测试元素对应的属性信息。
162.具体地,用例生成平台能够接受测试对象,并确定出该测试对象的测试图像;通过将测试图像输入图像识别模型,获得测试图像中的测试元素、以及测试元素的属性信息;通过将测试元素、测试元素的属性信息与图像元素、图像元素的属性信息进行匹配,建立测试图像与至少两个目标图像的关联关系,并基于关联关系确定测试图像对应的场景信息。
163.用例生成平台在确定测试图像对应的场景信息后,基于测试图像对应的场景信息确定测试图像对应的目标用例,并通过目标用例对测试对象进行测试。
164.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对通过目标用例对测试对象进行测试做进一步详细说明;比如,应用于生成购物软件的ui自动化测试用例场景中,测试对象可以理解为开发完成并进行提测后的购物软件,测试图像可以理解为购物软件的用户交互界面的图像,测试图像可以是通过对购物软件的用户交互界面进行截图的方式确定的,或者是通过对购物软件的用户交互界面进行识别,从而确定出测试对象的测试图像。
165.用例生成平台在接收到购物软件之后,能够确定出该购物软件中基于视觉图所实现的用户交互界面的图像,也即是实现图,该实现图中包含购物软件用户交互界面的文案、图像以及动画等重要信息;通过将该实现图输入至图像识别模型中识别出该实现图的图像
元素,比如用户交互界面的文案、图像以及动画等;以及实现图的图像元素对应的属性信息,比如实现图的图像元素对应的颜色、坐标等属性信息。
166.用例生成平台在获得实现图的图像元素、以及实现图的图像元素的属性信息之后,将实现图的图像元素与视觉图的图像元素以及实现图的图像元素的属性信息与视觉图的图像元素的属性信息进行匹配,并且通过匹配的方式确定出与实现图相对应的视觉图。比如,购物软件的购物车界面是基于购物车视觉图实现的,通过将购物车界面对应的实现图与每个视觉图进行匹配,确定出生成购物车界面所基于的购物车视觉图。
167.用例生成平台在将测试元素以及测试元素的属性信息与图像元素以及图像元素的属性信息进行匹配后,建立购物软件的实现图与至少两个购物软件的视觉图的关联关系,并基于关联关系确定购物软件的实现图对应的场景信息;比如,通过将购物车界面对应的实现图与购物车视觉图建立关联关系,确定与购物车界面的实现图相关联的视觉图的场景信息为“购物车”,基于该视觉图的场景确定出购物车界面的实现图的场景信息也为“购物车”。
168.用例生成平台在确定购物软件的实现图对应的场景信息后,基于该场景信息确定出对应的ui自动化测试用例,并通过该ui自动化测试用例对购物软件进行测试,比如,在基于视觉图对ui自动化测试用例进行编排的过程中,根据购物场景的执行过程编排出点击“商品界面”视觉图中的“购物车”按钮,即可跳转到通过该“购物车”按钮进行关联的“购物车”视觉图的执行流程。因此在确定ui自动化测试用例之后,根据该ui自动化测试用例模拟真实的用户购物操作,对购物软件的商品界面的“购物车”按钮进行点击,从而跳转到购物车界面;从而实现根据ui自动化测试用例对购物软件进行ui自动化测试的目的。
169.本说明书实施例中,基于接收测试对象确定测试图像;并通过将测试图像输入图像识别模型,快速、准确的获得测试图像的测试元素、以及测试元素的属性信息;提高了对测试对象进行测试的效率。并且,将测试元素以及测试元素的属性信息与图像元素以及图像元素的属性信息进行匹配,建立测试图像与至少两个目标图像的关联关系,并基于关联关系准确地确定测试图像对应的场景信息;并基于测试图像对应的场景信息确定测试图像对应的目标用例,并通过目标用例对测试对象进行测试,节省了对测试对象进行测试的成本,提高了测试工作的效率,有效的检测出测试对象的漏洞与缺陷,降低了因测试对象存在漏洞造成的损失,增强了测试对象的使用体验。
170.在本技术一实施例中,所述获得所述至少两个目标图像对应的场景信息之后,还包括:
171.接收预测对象,并确定所述预测对象的预测图像;
172.将所述预测图像输入图像识别模型,获得所述预测图像的预测元素、以及所述预测元素的属性信息;
173.将所述预测元素、所述预测元素的属性信息与所述图像元素、所述图像元素的属性信息进行匹配,建立所述预测图像与所述至少两个目标图像的关联关系,并基于所述关联关系确定所述预测图像对应的场景信息;
174.基于所述预测图像对应的场景信息确定所述预测图像对应的所述目标用例,并通过所述目标用例对所述预测对象进行测试。
175.其中,在测试对象为完成软件开发并进行提测的产品的情况下,预测对象可以理
解为开发人员基于视觉图完成软件开发,但并未进行提测的产品;该产品可以为app、h5产品。以预测对象为未进行提测的app为例,在实际应用中,开发人员基于视觉图完成对产品的软件开发获得app后;需要通过提测准入用例对该app进行自测,在通过提测准入测试用例对app进行自测并通过的情况下,获得测试对象。
176.在预测对象为未进行提测的app的情况下,预测图像可以理解为预测对象中的用户交互界面的图像,相应地,预测元素可以为预测图像中的文案、图像以及动画的重要信息;预测元素的属性信息可以理解为预测元素的坐标、颜色、尺寸等属性信息。
177.在预测对象为未进行提测的app的情况下,对预测对象进行测试可以理解为对预测对象进行提测准入测试。
178.具体地,用例生成平台在接收到预测对象,能够确定预测对象的预测图像。并将预测图像输入图像识别模型,获得预测图像的预测元素、以及预测元素的属性信息;通过将预测元素、预测元素的属性信息与图像元素、图像元素的属性信息进行匹配,建立预测图像与至少两个目标图像的关联关系,并基于关联关系确定预测图像对应的场景信息。
179.用例生成平台在确定预测图像对应的场景信息,基于预测图像对应的场景信息确定预测图像对应的目标用例,并通过目标用例对预测对象进行测试。
180.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对通过目标用例对预测对象进行测试做进一步详细说明,比如,应用于生成购物软件的ui自动化测试用例场景中,预测对象可以理解为开发完成,但并未进行提测的购物软件,预测图像可以理解为购物软件的用户交互界面的图像,预测图像可以是通过对购物软件的用户交互界面进行截图的方式确定的,或者是通过对购物软件的用户交互界面进行识别,从而确定出预测对象的预测图像。在实际应用中,开发人员基于视觉图完成对产品的开发之后,需要对开发完成的产品进行自测,从而检测出开发完成的产品中是否存在重大的产品漏洞或者重大的逻辑错误等产品问题;如果开发完成的产品不存在该产品问题,开发人员则将对开发完成的产品进行提测,测试人员在接收到提测产品后,对该产品进行进一步的测试,检测出提测产品是否存在格式不正确、产品执行是否流畅等产品细节问题;如果开发完成的产品存在重大的产品漏洞或者重大的逻辑错误,开发人员将会对开发完成的产品进行修复,并在修复完成后,将该产品重新进行自测。
181.基于此,用例生成平台在接收到未提测的购物软件之后,能够确定出该购物软件中基于视觉图所实现的用户交互界面的图像,也即是实现图,该实现图中包含购物软件用户交互界面的文案、图像以及动画等重要信息;通过将该实现图输入至图像识别模型中识别出该实现图的图像元素,比如用户交互界面的文案、图像以及动画等;以及实现图的图像元素对应的属性信息,比如实现图的图像元素对应的颜色、坐标等属性信息。
182.用例生成平台在获得实现图的图像元素、以及实现图的图像元素的属性信息之后,将实现图的图像元素与视觉图的图像元素以及实现图的图像元素的属性信息与视觉图的图像元素的属性信息进行匹配,并且通过匹配的方式确定出与实现图相对应的视觉图。比如,购物软件的购物车界面是基于购物车视觉图实现的,通过将购物车界面对应的实现图与每个视觉图进行匹配,确定出生成购物车界面所基于的购物车视觉图。
183.用例生成平台在将预测元素以及预测元素的属性信息与图像元素以及图像元素的属性信息进行匹配后,建立未提测的购物软件的实现图与至少两个购物软件的视觉图的
关联关系,并基于关联关系确定未提测的购物软件的实现图对应的场景信息;比如,通过将购物车界面对应的实现图与购物车视觉图建立关联关系,确定与购物车界面的实现图相关联的视觉图的场景信息为“购物车”,基于该视觉图的场景确定出购物车界面的实现图的场景信息也为“购物车”。
184.用例生成平台在确定未提测的购物软件的实现图对应的场景信息后,基于该场景信息确定出对应的提测准入用例,并通过该提测准入用例对购物软件进行自测,比如,在基于视觉图对提测准入用例进行编排的过程中,根据购物场景的执行过程编排出点击“商品界面”视觉图中的“购物车”按钮,即可跳转到通过该“购物车”按钮进行关联的“购物车”视觉图的执行流程。因此在确定提测准入用例之后,根据该提测准入用例模拟真实的用户购物操作,对未提测的购物软件的商品界面的“购物车”按钮进行点击,从而跳转到购物车界面;从而实现根据提测准入用例对购物软件进行自测的目的。
185.本说明书实施例中,用例生成平台确定接收到的预测对象的预测图像;并通过将预测图像输入图像识别模型,快速、准确的获得预测图像的预测元素、以及预测元素的属性信息,有效的提高了测试效率;并且,通过将预测元素、预测元素的属性信息与图像元素、图像元素的属性信息进行匹配,建立预测图像与至少两个目标图像的关联关系,使得用例生成平台能够精准的基于关联关系确定预测图像对应的场景信息;基于预测图像对应的场景信息确定预测图像对应的目标用例,并通过目标用例对预测对象进行测试。有效的检测出预测对象存在的漏洞与缺陷,提高了预测对象的质量以及稳定性,降低了产品开发的成本。
186.在本说明书一实施例中,所述建立所述测试图像与所述至少两个目标图像的关联关系之后,还包括:
187.将所述测试图像以及与所述测试图像相关联的所述至少两个目标图像发送至第三方平台进行匹配性检测。
188.其中,第三方平台可以理解为对图像与图像之间的匹配性、以及图像与终端的兼容性进行检测的平台。
189.匹配性检测可以理解为检测该测试图像以及与测试图像相关联的至少两个目标图像之间是否匹配,测试图像的测试元素以及测试元素的属性信息与目标图像的图像元素以及图像元素的属性信息是否存在差别,比如测试元素与图像元素的尺寸、坐标以及颜色的属性信息存在差别。
190.具体地,用例生成平台将测试图像以及与测试图像相关联的至少两个目标图像发送至第三方平台进行匹配性检测。
191.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对将测试图像以及与测试图像相关联的至少两个目标图像进行匹配性检测做进一步详细说明;比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台在建立购物软件用户交互界面的图像与至少两个视觉图的关联关系后,基于该关联关系将购物软件用户交互界面的图像与以及与该图像相关联的视觉图发送至第三方平台进行匹配性检测。
192.在实际应用中,用例生成平台还能够基于该关联关系将购物软件用户交互界面的图像与以及与该图像相关联的视觉图发送给视觉开发人员进行视觉走查。
193.本说明书实施例中,用例生成平台通过将测试图像以及与测试图像相关联的至少两个目标图像发送至第三方平台进行匹配性检测。能够精准的检测出测试图像与目标图像
之间是否存在不匹配的问题,提高测试对象的整体质量,有效的提升用户的使用感受。
194.在本技术一实施例中,所述基于所述场景信息与所述交互信息对所述至少两个目标图像进行执行流编排,生成目标用例之后,还包括:
195.将所述至少两个目标图像中的每个目标图像发送至不同型号的终端上进行展示,并获取所述不同型号的终端对每个目标图像的展示图像;
196.将所述展示图像发送至第三方检测平台进行兼容性检测。
197.其中,终端包括但不限于电脑、手机以及平板电脑;相应地,展示图像可以理解为终端向用户展示的图像,在将每个目标图像发送至终端上展示的情况下,该展示图像可以理解为终端上展示的目标图像。
198.兼容性检测可以理解为检测每个目标图像是否与不同型号的终端相兼容;比如,在目标图像为视觉图的情况下,兼容性检测可以理解为通过将视觉图发送到不同型号的终端上进行展示,检测该视觉图是否与不同型号的终端存在兼容性问题,该兼容性问题可以为视觉图在终端上无法显示、视觉图显示错误、视觉图变形等无法达到预期显示效果的问题。
199.具体地,用例生成平台在生成目标用例之后,将至少两个目标图像中的每个目标图像发送至不同型号的终端上进行展示,获取不同型号的终端对每个目标图像的展示图像;并将展示图像发送至第三方检测平台进行兼容性检测。
200.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对至少两个目标图像进行兼容性检测进行详细说明;比如,应用于生成购物软件的ui自动化测试用例场景中,不同型号的终端可以理解为不同型号的手机,展示图像可以理解为在手机屏幕上展示的视觉图的屏幕截图。
201.用例生成平台在生成目标用例之后,能够将接收到的至少两个视觉图发送中的每个视觉图发送至不同型号的手机上进行展示,并通过对手机屏幕中的展示内容进行截图的方式,获得不同型号的手机对每个视觉图的展示图像。
202.用例生成平台在获得展示图像后,将展示图像发送至第三方平台进行兼容性检测,识别出视觉图是否能够与不同型号的手机相兼容。
203.在实际应用中,用例生成平台还能够将获取到的展示图像发送给视觉开发人员进行兼容性检测。
204.本说明书实施例中,用例生成平台通过将至少两个目标图像中的每个目标图像发送至不同型号的终端上进行展示,获取不同型号的终端对每个目标图像的展示图像并发送至第三方检测平台;实现对目标图像与不同型号的终端的兼容性进行检测,从而有效的增强了基于目标图像生成的测试对象的稳定性,避免了该测试对象与终端不兼容的问题,提高了测试对象的整体质量以及用户的使用感受。
205.在本技术一实施例中,所述通过所述目标用例对待测试对象进行测试之后,还包括:
206.确定所述至少两个目标图像的第一图像数量;
207.基于所述测试图像与所述至少两个目标图像的关联关系,统计与所述测试图像不存在关联关系的所述至少两个目标图像的第二图像数量;
208.基于所述第一图像数量以及所述第二图像数量确定所述测试对象的覆盖率。
209.其中,至少两个目标图像的第一图像数量可以理解为接收到的至少两个目标图像的总数量。
210.至少两个目标图像的第二图像数量可以理解为与测试图像不存在关联关系的目标图像的数量。
211.具体地,用例生成平台能够确定接收到的至少两个目标图像的第一图像数量;并基于测试图像与至少两个目标图像的关联关系,统计与测试图像不存在关联关系的至少两个目标图像的第二图像数量;基于第一图像数量以及第二图像数量确定测试对象的覆盖率。
212.举例说明,以用例生成方法应用于生成ui自动化测试用例场景为例,对基于第一图像数量以及第二图像数量确定测试对象的覆盖率进行详细说明,比如,应用于生成购物软件的ui自动化测试用例场景中,用例生成平台能够确定接收到的购物软件视觉图的总数量,并基于购物软件的实现图与购物软件视觉图的关联关系,统计出没有与购物软件的实现图建立关联关系的购物软件视觉图的数量,比如,用例生成平台接收到的购物软件视觉图的数量为10,而开发人员在基于购物软件视觉图进行购物软件开发的过程中,仅在购物软件中对8张购物软件视觉图进行了实现,因此在购物软件的实现图在于购物软件视觉图建立关联关系的过程中,会有2张购物软件视觉图没有与购物软件的实现图建立关联关系。
213.用例生成平台基于购物软件视觉图的数量以及没有与购物软件的实现图建立关联关系的购物软件视觉图的数量,确定出购物软件视觉图与购物软件的实现图建立关联关系的比例为80%,基于此确定出通过目标用例对测试对象进行测试的场景覆盖率为80%。
214.本说明书实施例中,用例生成平台通过确定至少两个目标图像的第一图像数量以及与所述测试图像不存在关联关系的所述至少两个目标图像的第二图像数量,确定出测试对象的覆盖率,从而准确的确定出对测试对象进行测试过程中的充分性和完整性。
215.本说明书实施例提供的一种用例生成方法,通过获取接收到的至少两个目标图像中的交互对象、图像元素以及图像元素的属性信息,并通过将图像元素以及图像元素的属性信息输入场景识别模型,快速、准确的获得至少两个目标图像对应的场景信息,降低了生成目标用例所需的时间成本与人力成本,提高了生成目标用例的效率;并且基于场景信息与交互对象对至少两个目标图像进行执行流编排,进而生成目标用例,解决了依赖开发提测进行自动化测试用例生成的问题,实现了在开发阶段,基于目标图像对目标用例进行生成,进一步提高了软件测试工作的效率。
216.下述结合附图2,以本说明书提供的用例生成方法在生成购物软件的ui自动化测试用例场景下的应用为例,对所述用例生成方法进行进一步说明。其中,图2示出了本说明书一实施例提供的一种应用于生成购物软件的ui自动化测试用例场景下的用例生成方法的示意图。
217.参见图2可知,本说明书提供的在生成购物软件的ui自动化测试用例场景下的用例生成方法,能够在购物软件的视觉图设计完成之后,基于该视觉图所包含的信息生成无线端自动化测试用例。
218.具体的,在购物软件的视觉图设计完成之后,用例生成平台能够接收到测试人员发送的至少两个视觉图,并通过用例生成平台引用的视觉图解析能力,自动获取到该视觉图中所包含的产品实现素材,该产生实现素材包括文案、图像等视觉图元素、视觉图元素的
坐标;该视觉图解析能力是通过部署在用例生成平台上的插件实现的;并且将文案、图像等视觉图元素、视觉图元素的坐标输入至场景识别模型,获得视觉图对应的场景信息。
219.用例生成平台在获得文案、图像等视觉图元素、视觉图元素的坐标,以及视觉图的场景信息后,再通过用例生成平台引用的视觉图编排能力,去除无效的视觉图信息,标记出视觉图的可操作信息以及关联相同的应用场景信息,获得视觉图中有效的信息。
220.在通过视觉图解析能力对视觉图信息进行抽丝剥茧,并通过视觉图编排能力获得视觉图中有效的信息后,测试人员基于视觉图信息将视觉图按照购物软件的操作(交互)逻辑,手动进行用例编排,从而生成ui自动化测试用例;该ui自动化测试用例能够通过模拟真实的用户操作,对开发完成并进行提测后的购物软件进行ui自动化测试。
221.该用例生成平台还包括三个基础能力,分别为场景识别、操作步骤分析以及视觉展示。
222.其中,场景识别能力可以通过将购物软件的实现图与视觉图进行对比,以识别出购物软件的实现图的场景信息。
223.具体的,用例生成平台在接收到基于购物软件视觉图进行开发的购物软件后,获取购物软件的实现图,并通过将该实现图与视觉图进行比对,确定出该实现图相对应的购物软件视觉图,并根据该购物软件视觉图的场景信息,确定购物软件的实现图对应的场景信息。
224.其中,操作步骤分析能力可以为:
225.用例生成平台的操作步骤分析能力是基于部署在用例生成平台上的插件实现的,通过部署在用例生成平台上的插件,检测出购物软件的视觉图中用户能够进行点击、输入以及滑动的交互区域信息。
226.其中,视觉展示能力可以为:
227.用例生成平台能够对获取到的视觉图中的元素进行截取,获得视觉图元素的截图。
228.用例生成平台的基础能力可以与多种专项能力进行结合,从而对现有的专项能力进行增强,即图2中的专项赋能;通过将用例生成平台的基础能力与专项能力进行结合获得结合能力;该结合能力包括兼容性测试能力、用例编排能力、覆盖概率检测能力、基线沉淀能力以及精准测试能力。
229.其中,兼容性测试能力可以为:
230.基于用例生成平台的场景识别能力,将购物软件的视觉图和手机场景一一对应,即附图2中的场景匹配;并将购物软件的视觉图发送至不同型号的手机上进行展示,即附图2中的多机走查。
231.在通过不同型号的手机对视觉图进行展示之后,结合视觉走查能力和用例生成平台的视觉展示能力,获取不同型号的手机上展示的视觉图的截图信息,并将该截图信息直接提供给视觉开发人员进行视觉走查。
232.其中,用例编排能力可以为:
233.基于用例生成平台能够直接通过视觉图对提测准入的用例进行用例编排,从而生成提测准入用例,即附图2中的视觉图用例,以达到在产品提测阶段对提测的产品进行提测准入测试、回归测试等无线端的日常工作。并且可以将生成的自动化测试用例以及提测准
入用例沉淀为产品的基线用例,便于后续在产品进行快速迭代开发时,进行回归测试与复用。
234.用例生成平台进行用例编排的过程中,可以将视觉图解析功能解析出的视觉图的产品实现素材作为用例编排的元素,使得测试用例的编排时间极大缩短。即附图2中的高效编排;并且用例生成平台的视觉展示功能截取到的视觉图元素的截图精度更高,通过视觉图元素的相对坐标在手机上做对应的操作,提高脚本对用例编排事件的操作准确率,即附图2中的精度提高。
235.其中,覆盖概率检测能力可以为:
236.通过应用代码变更分析能力将迭代开发过程中变更的代码与影响html页面名称进行对应;同时应用前端页面与应用场景mock测试的能力,将视觉图的场景信息与html页面进行一一对应。从而实现通过用例生成平台获取自动化任务过程精准的代码覆盖率分布,也可以通过场景识别能力确定真实应用场景的覆盖率情况。
237.其中,基线沉淀能力可以为:
238.基于用例生成平台的场景识别能力可直接对视觉图进行场景分析,获得视觉图对应的场景信息,并对场景信息进行自动沉淀获得场景基线。
239.同时,通过图像相似度聚类分析能力对视觉图进行聚类分析,实现自动圈定基线图片的能力。
240.其中,精准测试能力可以为:
241.通过代码变更分析能力,场景识别能力,再配合页面信息获取能力(获取页面路径和测试用例的映射),可以将购物软件的用户交互界面或者html页面与预先生成的自动化测试用例进行一一匹配,即附图2中的场景识别;当后续对购物软件进行迭代开发过程中,购物软件代码发生变更的情况下,根据已有的自动化测试用例做精准的用例推荐;同时还可以在进行场景覆盖率检测的过程中做精准的场景推荐。
242.本说明书实施例中,所述用例生成方法通过将至少两个视觉图中的图像元素以及图像元素的属性信息输入场景识别模型,快速、准确的获得至少两个视觉图所对应的场景信息,提高了生成目标用例的效率,降低了生成目标用例所需的成本;并且基于场景信息与交互对象对至少两个目标图像进行执行流编排,进而生成目标用例,实现了跟进视觉图的信息拆解进行自动化测试用例的编排,解决了依赖开发提测进行自动化测试用例生成的问题,实现了在软件开发阶段,通过目标图像对目标用例进行生成。
243.同时,应用用例生成平台的图像识别能力做图像场景分析,并将用例生成平台的场景识别、操作步骤分析以及视觉展示等能力与现有的专项能力进行结合,从而应用在兼容性测试,全链路用例编排,覆盖率检测,数据基线,精准测试等多个测试领域,进一步的提高了软件测试工作的效率。
244.与上述方法实施例相对应,本说明书还提供了用例生成装置实施例,图3示出了本说明书一实施例提供的一种用例生成装置的结构示意图。如图3所示,该装置包括:
245.接收模块302,被配置为接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息;
246.获取模块304,被配置为将所述图像元素以及所述图像元素的属性信息输入场景识别模型,获得所述至少两个目标图像对应的场景信息;
247.生成模块306,被配置为基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。
248.在本技术一实施例中,所述场景信息包括至少一个;
249.相应地,所述生成模块306还被配置为:
250.基于每个场景信息从所述至少两个目标图像中确定,与所述每个场景信息对应的编排图像;
251.从所述交互对象中确定所述每个场景信息对应的编排图像中的交互对象;
252.基于所述每个场景信息对应的编排图像中的交互对象对所述每个场景信息对应的编排图像进行执行流编排,生成至少一个目标用例。
253.在本技术一实施例中,所述用例生成装置还包括测试模块,所述测试模块被配置为:
254.接收测试对象,并确定所述测试对象的测试图像;
255.将所述测试图像输入图像识别模型,获得所述测试图像的测试元素、以及所述测试元素的属性信息;
256.将所述测试元素、所述测试元素的属性信息与所述图像元素、所述图像元素的属性信息进行匹配,建立所述测试图像与所述至少两个目标图像的关联关系,并基于所述关联关系确定所述测试图像对应的场景信息;
257.基于所述测试图像对应的场景信息确定所述测试图像对应的所述目标用例,并通过所述目标用例对所述测试对象进行测试。
258.在本技术一实施例中,所述用例生成装置还包括标注模块,所述标注模块被配置为:
259.接收针对所述图像元素的标注请求,其中,所述标注请求中携带有图像元素标识;
260.根据所述图像元素标识从所述图像元素中确定待标注的图像元素,并为所述待标注的图像元素进行类型标注。
261.在本技术一实施例中,所述用例生成装置还包括场景生成模块,所述场景生成模块被配置为:
262.接收场景信息生成请求,其中,所述场景信息生成请求中携带有场景信息标识;
263.基于所述场景信息标识从所述场景信息中确定初始场景信息;
264.将所述初始场景信息进行关联,以生成目标场景信息。
265.在本技术一实施例中,所述用例生成装置还包括第一检测模块,所述第一检测模块被配置为:
266.将所述测试图像以及与所述测试图像相关联的所述至少两个目标图像发送至第三方平台进行匹配性检测。
267.在本技术一实施例中,所述用例生成装置还包括第二检测模块,所述第二检测模块被配置为:
268.将所述至少两个目标图像中的每个目标图像发送至不同型号的终端上进行展示,并获取所述不同型号的终端对每个目标图像的展示图像;将所述展示图像发送至第三方检测平台进行兼容性检测。
269.在本技术一实施例中,所述用例生成装置还包括预测模块,所述预测模块被配置
为:
270.接收预测对象,并确定所述预测对象的预测图像;
271.将所述预测图像输入图像识别模型,获得所述预测图像的预测元素、以及所述预测元素的属性信息;
272.将所述预测元素、所述预测元素的属性信息与所述图像元素、所述图像元素的属性信息进行匹配,建立所述预测图像与所述至少两个目标图像的关联关系,并基于所述关联关系确定所述预测图像对应的场景信息;
273.基于所述预测图像对应的场景信息确定所述预测图像对应的所述目标用例,并通过所述目标用例对所述预测对象进行测试。
274.在本技术一实施例中,所述用例生成装置还包括确定模块,所述确定模块被配置为:
275.确定所述至少两个目标图像的第一图像数量;
276.基于所述测试图像与所述至少两个目标图像的关联关系,统计与所述测试图像不存在关联关系的所述至少两个目标图像的第二图像数量;
277.基于所述第一图像数量以及所述第二图像数量确定所述测试对象的覆盖率。
278.在本技术一实施例中,所述用例生成装置还包括基线场景模块,所述基线场景模块被配置为:
279.基于所述场景信息确定基线场景信息条件,将满足所述基线场景信息条件的场景信息确定为基线场景信息。
280.本说明书提供的用例生成装置,通过获取接收到的至少两个目标图像中的交互对象、图像元素以及图像元素的属性信息,并通过将图像元素以及图像元素的属性信息输入场景识别模型,快速、准确的获得至少两个目标图像对应的场景信息,降低了生成目标用例所需的时间成本与人力成本,提高了生成目标用例的效率;并且基于场景信息与交互对象对至少两个目标图像进行执行流编排,进而生成目标用例,解决了依赖开发提测进行自动化测试用例生成的问题,实现了在开发阶段,基于目标图像对目标用例进行生成,进一步提高了软件测试工作的效率。
281.上述为本实施例的一种用例生成装置的示意性方案。需要说明的是,该用例生成装置的技术方案与上述的用例生成方法的技术方案属于同一构思,用例生成装置的技术方案未详细描述的细节内容,均可以参见上述用例生成方法的技术方案的描述。
282.图4示出了根据本说明书一实施例提供的一种计算设备400的结构框图。该计算设备400的部件包括但不限于存储器410和处理器420。处理器420与存储器410通过总线430相连接,数据库450用于保存数据。
283.计算设备400还包括接入设备440,接入设备440使得计算设备400能够经由一个或多个网络460通信。这些网络的示例包括公用交换电话网(pstn)、局域网(lan)、广域网(wan)、个域网(pan)或诸如因特网的通信网络的组合。接入设备440可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(nic))中的一个或多个,诸如ieee802.11无线局域网(wlan)无线接口、全球微波互联接入(wi

max)接口、以太网接口、通用串行总线(usb)接口、蜂窝网络接口、蓝牙接口、近场通信(nfc)接口,等等。
284.在本说明书的一个实施例中,计算设备400的上述部件以及图4中未示出的其他部
件也可以彼此相连接,例如通过总线。应当理解,图4所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
285.计算设备400可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或pc的静止计算设备。计算设备400还可以是移动式或静止式的服务器。
286.其中,处理器420用于执行如下计算机可执行指令:
287.接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息;
288.将所述图像元素以及所述图像元素的属性信息输入场景识别模型,获得所述至少两个目标图像对应的场景信息;
289.基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。
290.上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的用例生成方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述用例生成方法的技术方案的描述。
291.本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
292.接收至少两个目标图像,并获取所述至少两个目标图像中的交互对象、图像元素以及所述图像元素的属性信息;
293.将所述图像元素以及所述图像元素的属性信息输入场景识别模型,获得所述至少两个目标图像对应的场景信息;
294.基于所述场景信息与所述交互对象对所述至少两个目标图像进行执行流编排,生成目标用例。
295.上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的用例生成方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述用例生成方法的技术方案的描述。
296.上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
297.所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read

only memory)、随机存取存储器(ram,randomaccess memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内
容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
298.需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
299.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
300.以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1