测试用例编辑方法及装置、终端和计算机可读存储介质与流程

文档序号:17925560发布日期:2019-06-15 00:23阅读:167来源:国知局
本发明涉及研发管理
技术领域
:,尤其涉及一种测试用例编辑方法及装置、终端和计算机可读存储介质。
背景技术
::市面上对于自动化测试,通常都是由工作人员直接编写自动化测试代码,这一编写过程十分复杂,耗时很久,且容易出错,另外,这种代码编写方式,在后期维护时如遇需要修改的情况,则必须人工修改测试代码,工作量十分巨大。因此,如何简单高效地完成自动化测试的代码编写,成为目前亟待解决的技术问题。技术实现要素:本发明实施例提供了一种测试用例编辑方法及装置、终端和计算机可读存储介质,旨在解决相关技术中人工编写测试代码难度大、易出错、难维护的技术问题,能够简单高效地完成自动化测试的代码编写,提升自动化测试的代码编写及维护的效率。第一方面,本发明实施例提供了一种测试用例编辑方法,包括:获取待生成测试用例的属性信息;根据所述属性信息,在用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板;根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。在本发明上述实施例中,可选地,在所述获取待生成测试用例的属性信息的步骤之前,还包括:对历史测试中的多个历史测试用例进行复用内容检测;将每个所述历史测试用例中的所述复用内容以外的非复用内容删除,形成多个用例模板。在本发明上述实施例中,可选地,还包括:对所述多个用例模板进行去重处理,并将进行所述去重处理后得到的用例模板存入所述用例模板数据库中。在本发明上述实施例中,可选地,所述待生成测试用例的所述属性信息包括用例描述和用例操作步骤。在本发明上述实施例中,可选地,所述根据所述属性信息,在用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板的步骤,具体包括:在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字;在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量最多的用例模板,作为所述目标用例模板。在本发明上述实施例中,可选地,所述根据所述属性信息,在用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板的步骤,具体包括:在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字;在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量达到预定数量的若干个用例模板;在所述若干个用例模板中选择满足预定条件的一个用例模板作为所述目标用例模板,其中,所述预定条件为:选择的所述用例模板的功能类型与所述待生成测试用例的功能类型一致;和/或选择的所述用例模板的被访问权限的等级低于或等于所述待生成测试用例的访问权限的等级。第二方面,本发明实施例提供了一种测试用例编辑装置,包括:属性信息获取单元,用于获取待生成测试用例的属性信息;模板选择单元,用于根据所述属性信息,在用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板;模板填充单元,用于根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。在本发明上述实施例中,可选地,还包括:复用内容检测单元,用于在所述属性信息获取单元获取所述待生成测试用例的所述属性信息之前,对历史测试中的多个历史测试用例进行复用内容检测;非复用内容删除单元,用于将每个所述历史测试用例中的所述复用内容以外的非复用内容删除,形成多个用例模板。在本发明上述实施例中,可选地,还包括:去重单元,用于对所述多个用例模板进行去重处理;存储单元,用于将进行所述去重处理后得到的用例模板存入所述用例模板数据库中。在本发明上述实施例中,可选地,所述待生成测试用例的所述属性信息包括用例描述和用例操作步骤。在本发明上述实施例中,可选地,所述模板选择单元包括:关键字选取单元,用于在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字;关键字匹配单元,用于在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量最多的用例模板,作为所述目标用例模板。在本发明上述实施例中,可选地,所述模板选择单元包括:关键字选取单元,用于在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字;第一筛选单元,用于在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量达到预定数量的若干个用例模板;第二筛选单元,用于在所述若干个用例模板中选择满足预定条件的一个用例模板作为所述目标用例模板,其中,所述预定条件为:选择的所述用例模板的功能类型与所述待生成测试用例的功能类型一致;和/或选择的所述用例模板的被访问权限的等级低于或等于所述待生成测试用例的访问权限的等级。第三方面,本发明实施例提供了一种终端,包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述第一方面中任一项所述的方法。第四方面,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述第一方面中任一项所述的方法流程。以上技术方案,针对相关技术中人工编写测试代码难度大、易出错、难维护的技术问题,能够简单高效地完成自动化测试的代码编写,提升自动化测试的代码编写及维护的效率。具体来说,用例模板数据库中存储有大量用例模板,每个用例模板内包括有编写测试用例时高度复合的常用代码,应用用例模板即可省去对常用代码的编写步骤,只需要将用例模板中已有的常用代码以外的部分补齐即可。而选择用例模板和填充用例模板中已有的常用代码以外的部分均可由待生成测试用例的属性信息决定,待生成测试用例的属性信息包括但不限于用例描述和用例操作步骤,根据待生成测试用例的用例描述和用例操作步骤,可以在用例模板数据库中选择复合程度与待生成测试用例最高的用例模板作为目标用例模板。接着,可确定待生成测试用例的用例操作步骤中在目标用例模板里不具有相应代码的部分,再对此部分代码进行自动编写或人工编写。其中的自动编写包括但不限于在代码数据库中获取与用例操作步骤对应的代码片段。总的来说,可以设置多个用例模板,存储在用例模板数据库中,其中,每个用例模板中包括有编写测试用例时高度复合的代码,由此,引入用例模板就可将高度复合的代码直接取用,而无需人工编写,从而大量减少了代码编写量,节省测试的前期时间投入,最大限度地降低了代码编写难度,同样,也减少了对测试用例的后期维护的工作量。【附图说明】为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。图1示出了本发明的一个实施例的测试用例编辑方法的流程图;图2出了本发明的另一个实施例的测试用例编辑方法的流程图;图3出了本发明的再一个实施例的测试用例编辑方法的流程图;图4出了本发明的又一个实施例的测试用例编辑方法的流程图;图5示出了本发明的一个实施例的测试用例编辑装置的框图;图6示出了本发明的一个实施例的终端的框图。【具体实施方式】为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。图1示出了本发明的一个实施例的测试用例编辑方法的流程图。如图1所示,本发明的一个实施例的测试用例编辑方法的流程包括:步骤102,获取待生成测试用例的属性信息。步骤104,根据所述属性信息,在用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板。用例模板数据库中存储有大量用例模板,每个用例模板内包括有编写测试用例时高度复合的常用代码,应用用例模板即可省去对常用代码的编写步骤,只需要将用例模板中已有的常用代码以外的部分补齐即可。而选择用例模板和填充用例模板中已有的常用代码以外的部分均可由待生成测试用例的属性信息决定,待生成测试用例的属性信息包括但不限于用例描述和用例操作步骤,根据待生成测试用例的用例描述和用例操作步骤,可以在用例模板数据库中选择复合程度与待生成测试用例最高的用例模板作为目标用例模板。接着,可确定待生成测试用例的用例操作步骤中在目标用例模板里不具有相应代码的部分,再对此部分代码进行自动编写或人工编写。其中的自动编写包括但不限于在代码数据库中获取与用例操作步骤对应的代码片段。步骤106,根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。以上技术方案,针对相关技术中人工编写测试代码难度大、易出错、难维护的技术问题,能够简单高效地完成自动化测试的代码编写,提升自动化测试的代码编写及维护的效率。总的来说,可以设置多个用例模板,存储在用例模板数据库中,其中,每个用例模板中包括有编写测试用例时高度复合的代码,由此,引入用例模板就可将高度复合的代码直接取用,而无需人工编写,从而大量减少了代码编写量,节省测试的前期时间投入,最大限度地降低了代码编写难度,同样,也减少了对测试用例的后期维护的工作量。图2出了本发明的另一个实施例的测试用例编辑方法的流程图。如图2所示,本发明的另一个实施例的测试用例编辑方法的流程包括:步骤202,对历史测试中的多个历史测试用例进行复用内容检测。步骤204,将每个所述历史测试用例中的所述复用内容以外的非复用内容删除,形成多个用例模板。步骤202和步骤204表述了用例模板的生成方式,即检测出大量历史测试用例中的复用内容,将复用内容作为模板内容,将历史测试用例中的所述复用内容以外的非复用内容删除,即得到一个用例模板。其中,可为作为样本的大量历史测试用例进行分类,将测试步骤相同或相近的历史测试用例分为一类,比如,可将仅有订单接收和订单处理两步的测试用例分为一类,当一个测试用例的用例操作步骤为订单接收和订单处理两步时,可将此测试用例分在此类中,接着,将此测试用例中的订单发出方信息、订单接收方信息等非复用内容删除,留下体现和执行订单接收和订单处理的复合代码,即形成一个专用于订单接收和订单处理两步的测试用例模板。步骤206,对所述多个用例模板进行去重处理。步骤208,将进行所述去重处理后得到的用例模板存入所述用例模板数据库中。由于对大量历史测试用例进行处理后得到的用例模板中很可能有重复的,故可进行去重处理,以节省用例模板数据库的存储空间。另外,去重处理可减少用例模板的总数量,故也为进一步选择目标用例模板的步骤缩小了待选择模板集合的大小,便于更快速准确地选择所需的目标用例模板。步骤210,获取待生成测试用例的属性信息。步骤212,根据所述属性信息,在所述用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板。步骤214,根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。通过以上技术方案,引入用例模板后可将高度复合的代码直接使用,而无需人工编写,从而大量减少了代码编写量,节省测试的前期时间投入,最大限度地降低了代码编写难度,同样,也减少了对测试用例的后期维护的工作量。图3出了本发明的再一个实施例的测试用例编辑方法的流程图。如图3所示,本发明的再一个实施例的测试用例编辑方法的流程包括:步骤302,获取待生成测试用例的属性信息。步骤304,在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字。步骤306,在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量最多的用例模板,作为所述目标用例模板。步骤308,根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。在上述技术方案中,主要通过关键字匹配的数量高低来确定待生成测试用例与用例模板的复合度高低,其中,关键字取自每个用例操作步骤对应的用例描述中。在本发明的一种实现方式中,可将待生成测试用例的关键字与用例模板数据库中各用例模板的关键字进行总体比较,在各用例模板中选取与所述待生成测试用例所匹配的所述关键字的数量最多的用例模板。其中,关键字选择于用例操作步骤对应的用例描述中,当然,在每个用例操作步骤对应的用例描述中选取的关键字的数量可根据实际情况而定,在每个用例操作步骤对应的用例描述中选取的关键字的数量越多,对复合度的判断就越精确,由此而形成的用例模板也就越有实用性。图4出了本发明的又一个实施例的测试用例编辑方法的流程图。如图4所示,本发明的又一个实施例的测试用例编辑方法的流程包括:步骤402,获取待生成测试用例的属性信息。步骤404,在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字。步骤406,在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量达到预定数量的若干个用例模板。在本发明的一种实现方式中,由于用例模板的功能类型多种多样,为了准确选择实用性较高的模板,可在用例模板数据库中的关键字匹配数量足够高的若干个用例模板中,将待生成测试用例的功能类型作为进一步的筛选条件,进行二次筛选。在本发明的另一种实现方式中,为了保护自动化测试的安全性,保护其用例模板等内容不被窃取或泄露,可在用例模板数据库中的关键字匹配数量足够高的若干个用例模板中,将待生成测试用例的访问权限的等级作为进一步的筛选条件,进行二次筛选。步骤408,在所述若干个用例模板中选择满足预定条件的一个用例模板作为所述目标用例模板,其中,所述预定条件为:选择的所述用例模板的功能类型与所述待生成测试用例的功能类型一致;和/或选择的所述用例模板的被访问权限的等级低于或等于所述待生成测试用例的访问权限的等级。在本发明的一种实现方式中,选择的所述用例模板的功能类型与所述待生成测试用例的功能类型一致,即只有相同功能类型的待生成测试用例和用例模板之间才能互相套用,以避免待生成测试用例与用例模板的功能类型不同导致生成的测试用例无效,避免影响测试结果。在本发明的另一种实现方式中,选择的所述用例模板的被访问权限的等级低于或等于所述待生成测试用例的访问权限的等级。即不同的用例模板具有不同的被访问权限,只有待生成测试用例的访问权限的等级高于或等于用例模板的被访问权限的等级时,才说明待生成测试用例有资格使用该用例模板。由此,可避免保密程度较高的特殊功能模板被访问权限的等级较低的用户泄露,保护了用例模板的安全性。步骤410,根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。另外,上述两种预定条件可根据实际测试需求单独使用,也结合使用,以最大限度地保护测试模板选择的有效性与自动化测试的安全性。图5示出了本发明的一个实施例的测试用例编辑装置的框图。如图5所示,本发明实施例提供了一种测试用例编辑装置500,包括:属性信息获取单元502,用于获取待生成测试用例的属性信息;模板选择单元504,用于根据所述属性信息,在用例模板数据库中选择与所述待生成测试用例的复合度最高的目标用例模板;模板填充单元506,用于根据所述属性信息,对所述目标用例模板进行填充,生成对应的测试用例。该测试用例编辑装置500使用图1至图4示出的实施例中任一项所述的方案,因此,具有上述所有技术效果,在此不再赘述。测试用例编辑装置500还具有以下技术特征:在本发明上述实施例中,可选地,还包括:复用内容检测单元,用于在所述属性信息获取单元502获取所述待生成测试用例的所述属性信息之前,对历史测试中的多个历史测试用例进行复用内容检测;非复用内容删除单元,用于将每个所述历史测试用例中的所述复用内容以外的非复用内容删除,形成多个用例模板。在本发明上述实施例中,可选地,还包括:去重单元,用于对所述多个用例模板进行去重处理;存储单元,用于将进行所述去重处理后得到的用例模板存入所述用例模板数据库中。在本发明上述实施例中,可选地,所述待生成测试用例的所述属性信息包括用例描述和用例操作步骤。在本发明上述实施例中,可选地,所述模板选择单元504包括:关键字选取单元,用于在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字;关键字匹配单元,用于在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量最多的用例模板,作为所述目标用例模板。在本发明上述实施例中,可选地,所述模板选择单元504包括:关键字选取单元,用于在所述待生成测试用例的每个所述用例操作步骤对应的所述用例描述中选取关键字;第一筛选单元,用于在所述用例模板数据库中,选取与所述待生成测试用例的所述关键字匹配的数量达到预定数量的若干个用例模板;第二筛选单元,用于在所述若干个用例模板中选择满足预定条件的一个用例模板作为所述目标用例模板,其中,所述预定条件为:选择的所述用例模板的功能类型与所述待生成测试用例的功能类型一致;和/或选择的所述用例模板的被访问权限的等级低于或等于所述待生成测试用例的访问权限的等级。图6示出了本发明的一个实施例的终端的框图。如图6所示,本发明的一个实施例的终端600,包括至少一个存储器602;以及,与所述至少一个存储器602通信连接的处理器604;其中,所述存储器存储有可被所述至少一个处理器604执行的指令,所述指令被设置为用于执行上述图1至图4实施例中任一项所述的方案。因此,该终端600具有和图1至图4施例中任一项相同的技术效果,在此不再赘述。另外,本发明实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行上述图1至图4实施例中任一项所述的方法流程。以上结合附图详细说明了本发明的技术方案,通过本发明的技术方案,针对相关技术中人工编写测试代码难度大、易出错、难维护的技术问题,能够简单高效地完成自动化测试的代码编写,提升自动化测试的代码编写及维护的效率,总之,用例模板中包括有编写测试用例时高度复合的代码,引入用例模板就可将高度复合的代码直接取用,而无需人工编写,从而大量减少了代码编写量,节省测试的前期时间投入,最大限度地降低了代码编写难度,同样,也减少了对测试用例的后期维护的工作量。应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。需要说明的是,本发明实施例中所涉及的终端可以包括但不限于个人计算机(personalcomputer,pc)、个人数字助理(personaldigitalassistant,pda)、无线手持设备、平板电脑(tabletcomputer)、手机、mp3播放器、mp4播放器等。在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1