一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于用例语音的软件测试方法、装置、设备及介质与流程

2021-12-17 22:13:00 来源:中国专利 TAG:


1.本发明涉及软件测试领域,尤其涉及一种基于用例语音的软件测试方法、装置、计算机设备及存储介质。


背景技术:

2.现有的软件自动化测试,需要有一定代码能力的测试开发人员去实施,用例自动化调试时效率也不高。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种基于用例语音的软件测试方法、装置、计算机设备及存储介质,以提高软件产品的测试效率。
4.一种基于用例语音的软件测试方法,包括:
5.获取用户输入的用例语音;
6.在智能语音用例库获取与所述用例语音匹配的语音测试用例;
7.执行所述语音测试用例,以获取测试结果。
8.一种基于用例语音的软件测试装置,包括:
9.获取用例语音模块,用于获取用户输入的用例语音;
10.匹配语音用例模块,用于在智能语音用例库获取与所述用例语音匹配的语音测试用例;
11.执行测试用例模块,用于执行所述语音测试用例,以获取测试结果。
12.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于用例语音的软件测试方法。
13.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于用例语音的软件测试方法。
14.上述基于用例语音的软件测试方法、装置、计算机设备及存储介质,通过获取用户输入的用例语音,直接获取用户的语音,用语音实现测试产品的测试,用户操作更为简便。在智能语音用例库获取与所述用例语音匹配的语音测试用例,实现语音测试用例的自动匹配,提高用例测试的准确性。执行所述语音测试用例,以获取测试结果,整体过程中,用户只需要说出用例语音,测试过程的交互性更强。本发明基于语音识别将用例语音映射为语音测试用例,然后根据自动化框架将语音测试用例转化成自动化脚本代码,并执行该自动化脚本代码,实现基于语音测试用例的软件测试。语音测试用例的好处在于能快速组织用例、快速调试验证、让用户(业务测试人员)的价值更快兑现。本发明可以提高软件产品的测试效率。
附图说明
15.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
16.图1是本发明一实施例中基于用例语音的软件测试方法的一应用环境示意图;
17.图2是本发明一实施例中基于用例语音的软件测试方法的一流程示意图;
18.图3是本发明一实施例中基于用例语音的软件测试装置的一结构示意图;
19.图4是本发明一实施例中计算机设备的一示意图。
具体实施方式
20.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
21.本实施例提供的账户方法,可应用在如图1的应用环境中,其中,用户终端通过网络与服务端进行通信。其中,用户终端包括但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
22.在一实施例中,如图2所示,提供一种基于用例语音的软件测试方法,以该方法应用在图1中的服务端为例进行说明,包括如下步骤:
23.s10、获取用户输入的用例语音。
24.可理解地,在此处,用户可以是需要对应用程序进行测试的工作人员。用例语音可以指用户用语音方式说出的测试步骤。
25.用例语音可以由若干语音步骤组成。在一示例中,用例语音包括:1、打开xx证券应用【xx通财】;2、登录普通交易账户,账号1681688,密码123456,期待登录成功;3、按本方最优价买入股票3001xx,数量1000股;检查成交记录表,期待交易成功。
26.s20、在智能语音用例库获取与所述用例语音匹配的语音测试用例。
27.可理解地,智能语音用例库是预先构建的用于存储语音用例的数据库。智能语音用例库存储有多个语音用例。
28.在一示例中,可采用如下方式建立智能语音用例库。1、建立待测试系统(可以是web系统、手机系统等)的页面及页面元素的唯一语音标识(即元素标识)。2、建立各操作动作(如:单击、双击、保存、输入、选择、勾选)等的唯一语音标识(即操作标识)。3、建立待测试系统的页面及页面元素的多种抓取方法列表(如:byxpath、byid、byname等),每种抓取方法对应一个抓取方法标识。4、训练并建立语音原子操作库(智能语音用例库的子库)。比如:用例语音——在a页面单击价格栏位,填入88.8元,系统先解析出【a页面】、【价格栏】、【88.8】等标识(元素标识和操作标识),然后根据元素对照表得到抓取这些控件的方法(抓取方法标识),并按语序排列,形成原子操作序列——先跳转到a页,然后给价格栏赋值88.8元。5、构建语音用例。若干原子操作序列组合在一起,可以形成一个原子操作组合,即为语音用
例。每个语音用例对应一个原子操作组合标识。6、当收集有足够多的语音用例,则可以完成智能语音用例库的构建。在一些示例中,可以通过原子操作之间的组合,形成多个原子操作序列,然后再通过原子操作序列的组合,形成原子操作组合(语音用例)。通过此方式可以快速构建出大量的语言用例。在一些示例中,一个原子操作组合可以仅包含一个原子操作序列。
29.语音测试用例,为与用例语音匹配的语音用例。可以先将用例语音转换为用于查询语音用例的标识(原子操作组合标识),再根据该标识在智能语音用例库中查找到相应的语音用例,并基于该语音用例生成相应的语音测试用例。需要注意的是,在一些示例中,智能语音用例库存储的语音用例,为一般的操作步骤,如一个账号登录过程,而用例语音中则涉及具体的账号信息,匹配的语音测试用例需要增加用例语音的账号信息。具体的,一语音用例包括:打开xx页面——输入账号001——输入密码***——登录,匹配成功的后语音测试用例可以是:打开xx页面——输入账号002——输入密码***——登录。
30.s30、执行所述语音测试用例,以获取测试结果。
31.可理解地,语音测试用例是智能语音用例库中预先配置好的测试用例,遵循严格的语法规范。可以设置语音识别模块,对语音测试用例的语音进行语义解析,分解成对被测试对象的操作指令。在一些示例中,可以根据使用者(语音用例的发音人)的语音特点进行语音语调方面的识别和匹配。一般情况下,每一语音测试用例经过调试,保证都可以执行。
32.在执行语音测试用例时,可以采用传统自动化框架的常规控制操作,如可以是如何用例集管理,执行集选择、执行机并发控制、测试报告收集等。执行过程中,一般将语音测试用例转化为自动化脚本代码。
33.在执行语音测试用例之后,可以获得测试结果。在此处,测试结果可以是单一测试步骤的测试结果,也可以是所有测试步骤的测试结果。可以根据实际需要设置测试结果的输出形式。如测试结果可以使用测试报告的形式输出。
34.步骤s10

s30中,获取用户输入的用例语音,直接获取用户的语音,用语音实现测试产品的测试,用户操作更为简便。在智能语音用例库获取与所述用例语音匹配的语音测试用例,实现语音测试用例的自动匹配,提高用例测试的准确性。执行所述语音测试用例,以获取测试结果,整体过程中,用户只需要说出用例语音,测试过程的交互性更强。本实施例基于语音识别将用例语音映射为语音测试用例,然后根据自动化框架将语音测试用例转化成自动化脚本代码,并执行该自动化脚本代码,实现基于语音测试用例的软件测试。语音测试用例的好处在于能快速组织用例、快速调试验证、让用户(业务测试人员)的价值更快兑现。本实施例可以提高软件产品的测试效率。
35.可选的,步骤s20,即所述在智能语音用例库获取与所述用例语音匹配的语音测试用例,包括:
36.s201、将所述用例语音转化成原子操作组合标识;
37.s202、根据所述原子操作组合标识匹配出所述语音测试用例。
38.可理解地,原子操作组合标识可以是原子操作组合的标识。可以先对用例语音进行识别,识别出元素标识、操作标识、抓取方法标识等,然后组成原子操作序列,根据若干个原子操作序列生成原子操作组合标识。可以根据原子操作组合标识在智能语音用例库查找,获取相应的语音测试用例。
39.本实施例通过原子操作组合标识匹配语音测试用例,可以进一步提高语音用例测试的准确性。
40.可选的,所述原子操作组合标识与元素标识关联;
41.步骤s201,即所述将所述用例语音转化成原子操作组合标识,包括:
42.s2011、识别所述用例语音中的元素关键词;
43.s2012、将所述元素关键词转化为所述元素标识。
44.可理解地,由于原子操作组合标识是原子操作组合的标识,原子操作组合包括若干原子操作,每一原子操作包括若干元素标识,因而,原子操作组合标识与元素标识之间存在关联关系。
45.将用例语音转化为原子操作组合标识的过程中,需要从用例语音中识别出元素标识。元素标识可以是被测试系统中各页面及页面元素(控件)的名称标识。每一页面、每一页面元素(控件)都有唯一的元素标识。在一示例中,元素关键词可以是【xx通财】、股票名称等。
46.可选的,所述原子操作组合标识与操作标识关联;
47.步骤s201,即所述将所述用例语音转化成原子操作组合标识,包括:
48.s2013、识别所述用例语音中的操作关键词;
49.s2014、将所述操作关键词转化为所述操作标识。
50.可理解地,由于原子操作组合标识是原子操作组合的标识,原子操作组合包括若干原子操作,每一原子操作包括若干操作标识,因而,原子操作组合标识与操作标识之间存在关联关系。
51.将用例语音转化为原子操作组合标识的过程中,需要从用例语音中识别出操作标识。操作标识可以是被测试系统中各页面及页面操作(控件)的操作动作。每一操作动作都有唯一的操作标识。在一示例中,操作关键词可以是打开、登录、单击、双击、选择、输入、左划、右划、下划、下划、勾选等。
52.可选的,所述原子操作组合标识与抓取方法标识关联;
53.步骤s201,即所述将所述用例语音转化成原子操作组合标识,包括:
54.s2015、识别所述用例语音中的若干元素关键词;
55.s2016、根据所述若干元素关键词匹配所述抓取方法标识。
56.可理解地,由于原子操作组合标识是原子操作组合的标识,原子操作组合包括若干原子操作,每一原子操作包括若干抓取方法标识,因而,原子操作组合标识与抓取方法标识之间存在关联关系。
57.将用例语音转化为原子操作组合标识的过程中,需要从用例语音中识别出抓取方法标识。抓取方法标识可以是被测试系统中各页面及页面元素的抓取方法(控件)的名称标识,如byxpath、byid、byurl等。通过抓取方法标识,可以精确
58.可选的,步骤s201,即所述将所述用例语音转化成原子操作组合标识,包括:
59.s210、识别所述用例语音中的若干元素关键词和若干操作关键词;
60.s211、将所述元素关键词转化为元素标识;将所述操作关键词转化为操作标识;根据所述若干元素关键词匹配抓取方法标识;
61.s212、按预设排序规则对所述元素标识、所述操作标识、所述抓取方法标识进行排
序,生成原子操作序列;
62.s213、根据预设标识处理方法处理若干所述原子操作序列,生成所述原子操作组合标识。
63.可理解地,可以对用例语音进行识别,获得若干元素关键词和若干操作关键词。可以基于这些关键词获得相应的标识,并进行排序,生成原子操作序列。在一示例中,原子操作序列可以表示为:元素1、操作1、元素2、操作2、抓取方法1、
……

64.预设标识处理方法可以根据实际需要进行设置。可以对一个原子操作序列进行标识计算,生成该序列的标识,也可以对语音用例中的若干原子操作序列进行标识计算,生成该语音用例的原子操作组合标识。在一示例中,原子操作组合标识可以是原子操作组合的md5码。
65.本发明实施例基于页面元素识别和驱动的软件自动化测试框架和语音识别功能,将语音语义解析为对象库和动作指令(实际上对软件的操作都是有固定范式,某角色在某些页面做某些操作,期待某各结果,这是比较容易进行解析的),根据已有的自动化框架可以轻松将这些指令(页面元素、页面元素的捕捉方法、动作、语序)转化成自动化脚本代码。语音用例的好处在于能快速组织用例、快速调试验证、让业务测试人员的价值更快兑现。
66.测试用例的质量和有效性很大程度是取决于对业务的理解程度,业务人员更懂业务,不擅长用测试的格式去写测试用例。业务人员把所想的用语音表达出来与用文字写下来相比较,语音表达更能贴近他们的本意,测试速度也高更快。
67.需要注意的是,在此处,语音控制的意义在于快捷,就像声控操作汽车驾驶一样,通过语音流控制用例操作流程,在计算机的算力和语音解析能力足够强大时,将会是一个很轻松的过程。这样的测试验证和测试执行能以更高的效率得以展开和实施,非常有利于有丰富业务经验的人员进行测试验证,快速想到的用例,说出来比写出来的效率明显要高。
68.而且,语音执行的用例,比起文字用例,虽然增加了语音语义的转换过程,而针对某个软件的操作,其实就是对有限的页面元素进行相关点击、选择、输入、拖拽等操作,使用语音用例实现软件测试,是可行的,对于测试人员来讲也是更为方便的。由于预先构建有智能语音用例库,智能语音用例库每个语音用例都适配有可用的自动化脚本代码,可以减少语音测试用例在执行时的出错率,该出错率是可控的。
69.应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
70.在一实施例中,提供一种基于用例语音的软件测试装置,该基于用例语音的软件测试装置与上述实施例中基于用例语音的软件测试方法一一对应。如图3所示,该基于用例语音的软件测试装置包括获取用例语音模块10、匹配语音用例模块20、执行测试用例模块30。各功能模块详细说明如下:
71.获取用例语音模块10,用于获取用户输入的用例语音;
72.匹配语音用例模块20,用于在智能语音用例库获取与所述用例语音匹配的语音测试用例;
73.执行测试用例模块30,用于执行所述语音测试用例,以获取测试结果。
74.可选的,匹配语音用例模块20包括:
75.标识转化单元,用于将所述用例语音转化成原子操作组合标识;
76.用例匹配单元,用于根据所述原子操作组合标识匹配出所述语音测试用例。
77.可选的,所述原子操作组合标识与元素标识关联;
78.标识转化单元包括:
79.元素识别单元,用于识别所述用例语音中的元素关键词;
80.元素标识转化单元,用于将所述元素关键词转化为所述元素标识。
81.可选的,所述原子操作组合标识与操作标识关联;
82.标识转化单元还包括:
83.操作识别单元,用于识别所述用例语音中的操作关键词;
84.操作标识转化单元,用于将所述操作关键词转化为所述操作标识。
85.可选的,所述原子操作组合标识与抓取方法标识关联;
86.标识转化单元还包括:
87.若干元素识别单元,用于识别所述用例语音中的若干元素关键词;
88.抓取方法标识匹配单元,用于根据所述若干元素关键词匹配所述抓取方法标识。
89.可选的,标识转化单元还包括:
90.识别单元,用于识别所述用例语音中的若干元素关键词和若干操作关键词;
91.第一标识转化单元,用于将所述元素关键词转化为元素标识;将所述操作关键词转化为操作标识;根据所述若干元素关键词匹配抓取方法标识;
92.原子操作序列单元,用于按预设排序规则对所述元素标识、所述操作标识、所述抓取方法标识进行排序,生成原子操作序列;
93.第二标识转化单元,用于根据预设标识处理方法处理若干所述原子操作序列,生成所述原子操作组合标识。
94.关于基于用例语音的软件测试装置的具体限定可以参见上文中对于基于用例语音的软件测试方法的限定,在此不再赘述。上述基于用例语音的软件测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
95.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储基于用例语音的软件测试方法涉及的方法。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于用例语音的软件测试方法。
96.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
97.获取用户输入的用例语音;
98.在智能语音用例库获取与所述用例语音匹配的语音测试用例;
99.执行所述语音测试用例,以获取测试结果。
100.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
101.获取用户输入的用例语音;
102.在智能语音用例库获取与所述用例语音匹配的语音测试用例;
103.执行所述语音测试用例,以获取测试结果。
104.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
105.以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献