本发明涉及接口测试技术领域,具体涉及一种测试用例自动生成并执行的方法、装置、设备和存储介质。
背景技术:
目前,进行接口测试时,由人工撰写测试用例,但是人工撰写的测试用例存在覆盖不全或者接口测试用例冗余的问题。
技术实现要素:
有鉴于此,提供一种测试用例自动生成并执行的方法、装置、设备和存储介质,以解决相关技术中的问题。
本发明采用如下技术方案:
第一方面,本申请提供一种测试用例自动生成并执行的方法,包括:
获取测试用例的入参情况;
基于正交实验法自动生成测试用例;
解析测试用例并转换成预定的请求格式;
执行接口测试用例并回写测试结果;
比对测试结果并发送自动化测试报告。
可选的,所述入参情况包括:接口参数及取值范围。
可选的,所述基于正交实验法自动生成测试用例包括:
应用pict工具基于正交实验法自动生成测试用例。
可选的,所述基于正交实验法自动生成测试用例包括:
运行pict命令按照所述接口参数及取值范围自动生成所有的组合测试用例;
将所述测试用例输出到excel文档里。
可选的,所述解析测试用例并转换成预定的请求格式包括:
使用接口自动化框架的文件读写功能来解析所述excel文档内的测试用例。
可选的,所述执行接口测试用例并回写测试结果包括:
运行执行接口的方法,每执行一条用例都会读取excel里的一行内容作为请求入参,并将测试结果回写excel。
第二方面,本申请提供一种测试用例自动生成并执行的装置,包括:
获取模块,用于获取测试用例的接口参数及取值范围;
生成模块,用于基于正交实验法自动生成测试用例;
解析模块,用于解析测试用例并转换成预定的请求格式;
执行模块,用于执行接口测试用例并回写测试结果;
报告模块,用于比对测试结果并发送自动化测试报告。
可选的,所述获取模块,具体用于:获取测试用例的入参情况;
生成模块,具体用于运行pict命令按照所述接口参数及取值范围自动生成所有的组合测试用例,将所述测试用例输出到excel文档里;
解析模块,具体用于使用接口自动化框架的文件读写功能来解析所述excel文档内的测试用例;
执行模块和报告模块,具体用于运行执行接口的方法,每执行一条用例都会读取excel里的一行内容作为请求入参,并将测试结果回写excel。
第三方面,本申请提供一种测试用例自动生成并执行的设备,包括:
处理器,以及与所述处理器相连接的存储器;
所述存储器用于存储计算机程序,所述计算机程序至少用于执行本申请第一方面所述的测试用例自动生成并执行的方法;
所述处理器用于调用并执行所述存储器中的所述计算机程序。
第四方面,本申请提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如本申请第一方面所述的测试用例自动生成并执行的方法中各个步骤。
本发明采用以上技术方案,获取测试用例的入参情况;基于正交实验法自动生成测试用例;解析测试用例并转换成预定的请求格式;执行接口测试用例并回写测试结果;比对测试结果并发送自动化测试报告。如此,本申请提供的方案中,基于正交实验法自动生成测试用例,不仅仅避免了人工撰写时测试用例存在覆盖不全的问题,还可以避免或者人工撰写时测试用例冗余的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一测试用例自动生成并执行的方法的流程图;
图2是本发明实施例提供的一种测试用例自动生成并执行的装置的结构示意图;
图3是本发明实施例提供的一种测试用例自动生成并执行的设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。
首先对本发明实施例的应用场景进行说明,目前,进行接口测试时,由人工撰写测试用例,但是人工撰写的测试用例存在覆盖不全或者接口测试用例冗余的问题,本申请针对这一问题提出了对应的解决方案。
实施例
图1是本发明实施例提供的一测试用例自动生成并执行的方法的流程图。参考图1,该方法具体可以包括如下步骤:
s101、获取测试用例的入参情况;
具体的,所述入参情况包括:接口参数及取值范围。在实际应用中,工作人员可以依照预设的格式写一个txt文档;
进一步的,txt文档的具体内容可以为:
var1:空,非法,不存在,超长,正常
var2:空,非法,错误,超长,正常
paramtype:{“var1”:value1,“var2”:value2}
需要说明的是,上述内容是txt文档的具体内容,其中,接口参数包括:var1和var2;var1的取值范围包括:空,非法,不存在,超长,正常;var2取值范围包括:的空,非法,错误,超长,正常。
s102、基于正交实验法自动生成测试用例;
运行接口自动化工具,先运行pict命令按照上述接口参数取值范围自动生成所有的组合测试用例并输出到excel文档里,效果如下,以上参数取值组合就生成了5*5=25条用例。
具体的,对应上述实施例中txt文档的内容,excel文档的内容为:
s103、解析测试用例并转换成预定的请求格式;
具体的,使用接口自动化框架的文件读写功能来解析用例文档数据s104、执行接口测试用例并回写测试结果;
运行执行接口的方法,每执行一条用例都会读取excel里的一行内容作为请求入参,并将测试结果回写excel
s105、比对测试结果并发送自动化测试报告。
进一步的,在步骤s105自动比对测试结果与期望结果,输出测试报告。
本发明采用以上技术方案,获取测试用例的入参情况;基于正交实验法自动生成测试用例;解析测试用例并转换成预定的请求格式;执行接口测试用例并回写测试结果;比对测试结果并发送自动化测试报告。如此,本申请提供的方案中,基于正交实验法自动生成测试用例,不仅仅避免了人工撰写时测试用例存在覆盖不全的问题,还可以避免或者人工撰写时测试用例冗余的问题。
图2是本发明实施例提供的一种测试用例自动生成并执行的装置的结构示意图;参照图2,本申请提供的测试用例自动生成并执行的装置,包括:
获取模块21,用于获取测试用例的接口参数及取值范围;
生成模块22,用于基于正交实验法自动生成测试用例;
解析模块23,用于解析测试用例并转换成预定的请求格式;
执行模块24,用于执行接口测试用例并回写测试结果;
报告模块25,用于比对测试结果并发送自动化测试报告。
具体的,所述获取模块21,具体用于:获取测试用例的入参情况;
生成模块22,具体用于运行pict命令按照所述接口参数及取值范围自动生成所有的组合测试用例,将所述测试用例输出到excel文档里;
解析模块23,具体用于使用接口自动化框架的文件读写功能来解析所述excel文档内的测试用例;
执行模块24和报告模块25,具体用于运行执行接口的方法,每执行一条用例都会读取excel里的一行内容作为请求入参,并将测试结果回写excel。
图3是本发明实施例提供的一种测试用例自动生成并执行的设备的结构示意图。参照图3,本申请一种测试用例自动生成并执行的设备,包括:
处理器31,以及与所述处理器相连接的存储器32;
所述存储器32用于存储计算机程序,所述计算机程序至少用于执行本申请任一实施例所述的测试用例自动生成并执行的方法;
所述处理器31用于调用并执行所述存储器32中的所述计算机程序。
一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如执行本申请任一实施例所述的测试用例自动生成并执行的方法中各个步骤。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
1.一种测试用例自动生成并执行的方法,其特征在于,包括:
获取测试用例的入参情况;
基于正交实验法自动生成测试用例;
解析测试用例并转换成预定的请求格式;
执行接口测试用例并回写测试结果;
比对测试结果并发送自动化测试报告。
2.根据权利要求1所述测试用例自动生成并执行的方法,其特征在于,所述入参情况包括:接口参数及取值范围。
3.根据权利要求1所述,测试用例自动生成并执行的方法,其特征在于,所述基于正交实验法自动生成测试用例包括:
应用pict工具基于正交实验法自动生成测试用例。
4.根据权利要求1所述测试用例自动生成并执行的方法,其特征在于,所述基于正交实验法自动生成测试用例包括:
运行pict命令按照所述接口参数及取值范围自动生成所有的组合测试用例;
将所述测试用例输出到excel文档里。
5.根据权利要求4所述测试用例自动生成并执行的方法,其特征在于,所述解析测试用例并转换成预定的请求格式包括:
使用接口自动化框架的文件读写功能来解析所述excel文档内的测试用例。
6.根据权利要求1所述测试用例自动生成并执行的方法,其特征在于,所述执行接口测试用例并回写测试结果包括:
运行执行接口的方法,每执行一条用例都会读取excel里的一行内容作为请求入参,并将测试结果回写excel。
7.一种测试用例自动生成并执行的装置,其特征在于,包括:
获取模块,用于获取测试用例的接口参数及取值范围;
生成模块,用于基于正交实验法自动生成测试用例;
解析模块,用于解析测试用例并转换成预定的请求格式;
执行模块,用于执行接口测试用例并回写测试结果;
报告模块,用于比对测试结果并发送自动化测试报告。
8.根据权利要求7所述测试用例自动生成并执行的装置,其特征在于,所述获取模块,具体用于:获取测试用例的入参情况;
生成模块,具体用于运行pict命令按照所述接口参数及取值范围自动生成所有的组合测试用例,将所述测试用例输出到excel文档里;
解析模块,具体用于使用接口自动化框架的文件读写功能来解析所述excel文档内的测试用例;
执行模块和报告模块,具体用于运行执行接口的方法,每执行一条用例都会读取excel里的一行内容作为请求入参,并将测试结果回写excel。
9.一种测试用例自动生成并执行的设备,其特征在于,包括:
处理器,以及与所述处理器相连接的存储器;
所述存储器用于存储计算机程序,所述计算机程序至少用于执行权利要求1-6任一项所述的测试用例自动生成并执行的方法;
所述处理器用于调用并执行所述存储器中的所述计算机程序。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-6任一项所述的测试用例自动生成并执行的方法中各个步骤。
技术总结