测试用例的生成方法、装置及计算机可读存储介质与流程

文档序号:24527702发布日期:2021-04-02 10:05阅读:73来源:国知局
测试用例的生成方法、装置及计算机可读存储介质与流程

本发明涉及测试用例生成的技术领域,尤其涉及一种测试用例的生成方法、装置及计算机可读存储介质。



背景技术:

随着自动化测试的越来越普及,大量的it行业开始采用自动化测试来提高测试的效率,然而现有技术在进行自动化测试时,并未针对测试用例去实现进行进一步的改进以提高测试用例生成的效率。



技术实现要素:

本发明实施例通过提供一种测试用例的生成方法、装置及计算机可读存储介质,旨在解决现有技术在进行自动化测试时,并未针对测试用例去实现进行进一步的改进以提高测试用例生成的效率的技术问题。

本发明实施例提供一种测试用例的生成方法,所述测试用例的生成方法应用于终端设备,所述测试用例的生成方法包括:

获取测试需求分析文档;

获取所述测试需求分析文档的操作信息,所述操作信息包括操作关键字以及对象关键字;

根据所述操作信息生成测试用例。

在一实施例中,所述获取测试需求分析文档的操作信息的步骤包括:

对所述测试需求分析文档进行语义分析,得到所述操作关键字以及所述对象关键字,所述操作关键字包括对界面的操作,所述对象关键字包括界面控件。

在一实施例中,所述对所述测试需求分析文档进行语义分析,得到所述操作关键字以及所述对象关键字的步骤包括:

获取所述测试需求分析文档中的目标文本;

获取所述目标文本中的分割标识;

根据所述分割标识对所述目标文本进行分割,得到所述操作关键字以及所述对象关键字。

在一实施例中,获取测试需求分析文档的步骤之前,还包括:

获取流程信息表的流程节点关键字;

生成所述流程节点关键字对应的测试需求分析文档模板并输出,以供用户根据所述测试需求分析文档模板输入所述测试需求分析文档。

在一实施例中,所述获取流程信息表的流程节点关键字的步骤包括:

获取所述流程信息表中的流程信息文本;

对所述流程信息文本进行所述语义分析,得到所述流程节点关键字。

在一实施例中,所述根据所述查找信息生所测试用例的步骤之后,所述方法还包括:

根据所述测试用例确定要执行的程序指令;

执行所述程序指令。

在一实施例中,所述根据所述测试用例确定要执行的程序指令的步骤包括:

获取所述测试用例中的操作关键字以及对象关键字;

确定所述操作关键字对应的功能指令;

确定所述对象关键字对应的对象;

根据所述功能指令以及所述对象确定所述程序指令。

在一实施例中,所述执行所述程序指令的步骤包括:

确定所述程序指令的响应顺序;

根据所述响应顺序执行所述程序指令,以实现连续的测试操作

本发明实施例还提供一种测试用例的生成装置,所述测试用例的生成装置包括:存储器、处理器及存储在所述存储器上并可在处理器上运行的测试用例的生成程序,所述处理器执行所述测试用例的生成程序时实现如上所述的测试用例的生成方法的各个步骤。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有测试用例的生成程序,所述测试用例的生成程序被处理器执行时实现如上所述的测试用例的生成方法的各个步骤。

在本实施例的技术方案中,测试用例的生成装置获取测试需求分析文档;获取所述测试需求分析文档的操作信息,所述操作信息包括操作关键字以及对象关键字;根据所述操作信息生成测试用例。由于针对了测试需求分析文档来自动获取操作信息的操作关键字及对象关键字,进而可快速生成测试用例,相对于现有的自动测试方式,在测试用例的生成方面,测试用例由测试用户的生成装置根据测试需求分析文档自动生成,无需测试人员手工书写,同时由于自动化用例是由测试需求分析文档生成,后续无需化精力去维护自动化用例资产,只需做好测试需求分析文档的维护即可实现自动化用例随版本即时生成即时更新,提高了测试用例生成的效率。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例涉及的测试用例的生成装置的硬件构架示意图;

图2为本发明测试用例的生成方法第一实施例的流程示意图;

图3为本发明测试用例的生成方法第二实施例的流程示意图;

图4为本发明测试用例的生成方法第三实施例步骤s211的流程示意图;

图5为本发明测试用例的生成方法第四实施例的流程示意图;

图6为本发明测试用例的生成方法第五实施例步骤s40的细化流程示意图;

图7为本发明测试用例的生成方法第六实施例的流程示意图;

图8为本发明测试用例的生成方法第七实施例步骤s60的细化流程示意图;

图9为本发明测试用例的生成方法第八实施例步骤s70的细化流程示意图。

具体实施方式

为了更好的理解上述技术方案,下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本发明的主要解决方案是:测试用例的生成装置获取测试需求分析文档;获取所述测试需求分析文档的操作信息,所述操作信息包括操作关键字以及对象关键字;根据所述操作信息生成测试用例。

由于针对了测试需求分析文档来自动获取操作信息的操作关键字及对象关键字,进而可快速生成测试用例,相对于现有的自动测试方式,在测试用例的生成方面,测试用例由测试用户的生成装置根据测试需求分析文档自动生成,无需测试人员手工书写,同时由于自动化用例是由测试需求分析文档生成,后续无需化精力去维护自动化用例资产,只需做好测试需求分析文档的维护即可实现自动化用例随版本即时生成即时更新,提高了测试用例生成的效率。

作为一种实现方式,测试用例的生成装置可以如图1。

本发明实施例方案涉及的是测试用例的生成装置,测试用例的生成装置包括:处理器101,例如cpu,存储器102,通信总线103。其中,通信总线103用于实现这些组件之间的连接通信。

存储器102可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。如图1,作为一种计算机存储介质的存储器103中可以包括检测程序;而处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

获取测试需求分析文档;

获取所述测试需求分析文档的操作信息,所述操作信息包括操作关键字以及对象关键字;

根据所述操作信息生成测试用例。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

对所述测试需求分析文档进行语义分析,得到所述操作关键字以及所述对象关键字,所述操作关键字包括对界面的操作,所述对象关键字包括界面控件。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

获取所述测试需求分析文档中的目标文本;

获取所述目标文本中的分割标识;

根据所述分割标识对所述目标文本进行分割,得到所述操作关键字以及所述对象关键字。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

获取流程信息表的流程节点关键字;

生成所述流程节点关键字对应的测试需求分析文档模板并输出,以供用户根据所述测试需求分析文档模板输入所述测试需求分析文档。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

获取所述流程信息表中的流程信息文本;

对所述流程信息文本进行所述语义分析,得到所述流程节点关键字。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

根据所述测试用例确定要执行的程序指令;

执行所述程序指令。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

获取所述测试用例中的操作关键字以及对象关键字;

确定所述操作关键字对应的功能指令;

确定所述对象关键字对应的对象;

根据所述功能指令以及所述对象确定所述程序指令。

在一实施例中,处理器101可以用于调用存储器102中存储的检测程序,并执行以下操作:

确定所述程序指令的响应顺序;

根据所述响应顺序执行所述程序指令,以实现连续的测试操作。

在本实施例的技术方案中,测试用例的生成装置获取测试需求分析文档;获取所述测试需求分析文档的操作信息,所述操作信息包括操作关键字以及对象关键字;根据所述操作信息生成测试用例。由于针对了测试需求分析文档来自动获取操作信息的操作关键字及对象关键字,进而可快速生成测试用例,相对于现有的自动测试方式,在测试用例的生成方面,测试用例由测试用户的生成装置根据测试需求分析文档自动生成,无需测试人员手工书写,同时由于自动化用例是由测试需求分析文档生成,后续无需化精力去维护自动化用例资产,只需做好测试需求分析文档的维护即可实现自动化用例随版本即时生成即时更新,提高了测试用例生成的效率。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

参照图2,图2为本发明测试用例的生成方法的第一实施例,方法包括以下步骤:

步骤s10,获取测试需求分析文档。

在本实施例中,上述测试需求分析文档为用户输入的用于生成测试用例的文档。

步骤s20,获取所述测试需求分析文档的操作信息,所述操作信息包括操作关键字以及对象关键字。

在本实施例中,上述操作信息包括操作关键字以及对象关键字,具体的,操作关键字指的是需要进行测试的操作名称对应的关键字,而对象关键字则指的是要进行测试的对象名称对应的关键字。

可选的,对界面操作的标准结构为:操作+操作对象,操作包括点击、输入、悬停以及双击等,操作对象包括按钮、链接以及表格等,在此不做限定,进一步的,将目标文本进行语义分析,最终分解为一系列“操作+操作对象”的单元,这些单元最终转为对浏览器的实际操作,实现对界面的连续业务操作,也即测试用例。

步骤s30,根据所述操作信息生成测试用例。

在本实施例中,测试用例(testcase)是将软件测试的行为活动做一个科学化的组织归纳,目的是能够将软件测试的行为转化成可管理的模式;同时测试用例也是将测试具体量化的方法之一,不同类别的软件,测试用例是不同的。不同于诸如系统、工具、控制、游戏软件,管理软件的用户需求更加不同的趋势。

在本实施例的技术方案中,由于针对了测试需求分析文档来自动获取操作信息的操作关键字及对象关键字,进而可快速生成测试用例,相对于现有的自动测试方式,在测试用例的生成方面,测试用例由测试用户的生成装置根据测试需求分析文档自动生成,无需测试人员手工书写,同时由于自动化用例是由测试需求分析文档生成,后续无需化精力去维护自动化用例资产,只需做好测试需求分析文档的维护即可实现自动化用例随版本即时生成即时更新,提高了测试用例生成的效率。

参照图3,图3为本发明测试用例的生成方法的第二实施例,基于第一实施例,步骤s20包括:

步骤s21,对所述测试需求分析文档进行语义分析,得到所述操作关键字以及所述对象关键字,所述操作关键字包括对界面的操作,所述对象关键字包括界面控件。

在本实施例中,上述语音分析包括关键字提取以及文本切割,具体的,解析上述测试需求分析文档,以得到操作信息,例如:在所述测试需求分析文档中发现“对按钮进行点击”的文本信息,则在上述文本信息中将操作关键字确定为点击,将对象关键字确定为按钮。

可选的,上述操作关键字包括点击、输入以及悬停,所述对象关键字包括按钮、链接以及表格。

在本实施例的技术方案中,通过对测试需求分析文档进行语义分析以提取操作信息,进而根据操作信息进行测试用例的自动生成,提高了测试用例在生成方面的智能化程度。

参照图4,图4为本发明测试用例的生成方法的第三实施例,基于第一或第二实施例,步骤21包括:

步骤s211,获取所述测试需求分析文档中的目标文本。

在本实施例中,上述目标文本为需要在测试需求分析文档中进行语义分析的文本,具体的,例如:在测试需求分析文档中发现流程部分文本以及用例部分文本,而此时可识别出用例部分文件以进行语义分析,得到操作信息。

步骤s212,获取所述目标文本中的分割标识。

在本实施例中,上述目标文本中携带分割标识,可为预设符号,具体的,例如:在目标文本为“测试当登录(用户名:xxxx,密码:xxxx),点击xx按钮,找到xx按钮并双击,输入“关于xxx的申请”标题,进入xxxx页面,点击xx按钮,点击xx按钮,结束”,可将“,”作为上述分割标识。

步骤s213,根据所述分割标识对所述目标文本进行分割,得到所述操作关键字以及所述对象关键字。

在本实施例中,通过上述分割标识作为分界线以对目标文本进行分割,可省去分析分割位置的操作,进而快速得到操作信息。

在本实施例的技术方案中,通过分割标识可直接进行目标文本的分割,一方面,可减少判断切割位置的时间,另一方面,有预设的分割标识,可防止断切割位置错误的情况。

参照图5,图5为本发明测试用例的生成方法的第四实施例,基于第一至第三任一实施例,步骤s10之前,所述方法还包括:

步骤s40,获取流程信息表的流程节点关键字。

步骤s50,生成所述流程节点关键字对应的测试需求分析文档模板并输出,以供用户根据所述测试需求分析文档模板输入所述测试需求分析文档。

在本实施例中,上述流程信息表为用户输入的测试流程节点,而上述流程节点关键字则为测试用例的生成装置对上述流程信息表进行语义分析而得到的关键字,具体的,例如:1、解析项目需求确认书,从中获取流程节点,1)测试人员对需求确认书描述流程的小节进行“自动测试”标注,然后代码根据“自动测试”找到描述流程的小节,进行语义分析,找到流程节点关键词并保存,找到的流程节点关键词,举例如下:1、xx部初审2、xx部复审3、xx部领导审批4、xx部领导事后补审批5、对外发布确认6签收业务暂停记录表等等。进一步的,在找到流程关键词之后,可以生成对应的测试需求分析文档的模板并发送给客户,以供用户根据测试需求分析文档模板输入测试需求分析文档,可选的,上述需求分析文档模板包括输入提示信息,用于提示用户预设位置进行目标文本的填写。

在本实施例的技术方案中,通过用户输入流程后输出对应的模板,可使得用户快速便捷的在模式上撰写测试需求分析文档上的目标文本部分,进而可提高用户体验。

参照图6,图6为本发明测试用例的生成方法的第五实施例,基于第一至第四任一实施例,步骤s40包括:

步骤s41,获取所述流程信息表中的流程信息文本。

步骤s42,对所述流程信息文本进行所述语义分析,得到所述流程节点关键字。

在本实施例中,上述流行信息文本可理解为用户输入的流行信息表的流程文本部分,可选的,可根据流程信息表上用于表征流程文本部分位置的预设标识来确定上述流程信息文本的所在。

在本实施例的计算方案中,通过确定流程信息文本来确定流程节点关键字,可使得在确定流程节点的关键字时,快速锁定要进行语音分析的文本区域。

参照图7,图7为本发明测试用例的生成方法的第六实施例,基于第一至第五任一实施例,步骤s30之后,方法还包括:

步骤s60,根据所述测试用例确定要执行的程序指令。

步骤s70,执行所述程序指令。

在本实施例中,上述程序指令指的是预先存储于测试用例的生成装置中的计算机程序,测试用例的生成装置可根据上述测试用例调用对应的程序指令。

在本实施例的技术方案中,通过测试用例调用对应的程序指令以完成自动测试,可使得自动测试的智能化程度提高。

参照图8,图8为本发明测试用例的生成方法的第七实施例,基于第一至第六任一实施例,步骤s60包括:

步骤s61,获取所述测试用例中的操作关键字以及对象关键字。

步骤s62,确定所述操作关键字对应的功能指令。

步骤s63,确定所述对象关键字对应的对象。

步骤s64,根据所述功能指令以及所述对象确定所述程序指令。

在本实施例中,可根据上述测试用例中的操作关键字来确定要执行的操作以及根据对象关键字来确定要进行操作的对象,进而可根据上述操作以及对象确定要执行的程序指令。

在本实施例的技术方案中,可通过测试用例中的操作关键字以及对象关键子来进行操作以及对象的确定,在确定了操作以及对象后,可快速确定要执行的程序指令。

参照图9,图9为本发明测试用例的生成方法的第八实施例,基于第一至第七任一实施例,步骤s70包括:

步骤s71,确定所述程序指令的响应顺序。

在本实施例中,上述响应顺序指的是对对象进行操作的先后顺序,具体的,可根据操作关键字以及对象关键字在上述测试需求分析文档中对应的文本顺序进行确定。

步骤s72,根据所述响应顺序执行所述程序指令,以实现连续的测试操作。

在本实施例的技术方案中,在确定响应顺序后,面对数据量巨大的测试用例也可根据响应顺序来实现连续的测试操作,可防止一次性执行多个程序指令导致的测试效果差,提高了自动测试的稳定性,进一步的,可自定义条件程序指令执行的先后顺序,以提高测试的完整性以及灵活性。

为实现上述目的,本发明实施例还提供一种测试用例的生成装置,所述测试用例的生成装置包括:存储器、处理器及存储在所述存储器上并可在处理器上运行的测试用例的生成程序,所述处理器执行所述测试用例的生成程序时实现如上所述的测试用例的生成方法的各个步骤。

为实现上述目的,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有测试用例的生成程序,所述测试用例的生成程序被处理器执行时实现如上所述的测试用例的生成方法的各个步骤。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或测试用例的生成程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的测试用例的生成产品程序的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和测试用例的生成程序产品的流程图和/或方框图来描述的。应理解可由测试用例的生成程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些测试用例的生成程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些测试用例的生成程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些测试用例的生成程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1