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

一种系统接口测试方法及装置与流程

2023-02-04 16:41:53 来源:中国专利 TAG:


1.本发明涉及计算机领域,特别涉及一种系统接口测试方法及装置。


背景技术:

2.随着当前社会的计算机发展,软件产品的迭代也在不断缩短,软件以需求为核心,用户需求频繁变化,开发周期不断缩短,产品频繁上线,用户对低质量的产品容忍度越来越低,所以集成、发布、测试频率大幅增加。
3.测试中包括系统接口测试,接口是主要用于外部系统和系统间以及内部各个子系统之间的交互点,定义交互点的特性,可通过这些交互点和特定的规则或协议,实现数据交互。接口测试的功能测试主要内容是测试接口实现的正确性、安全性、稳定性等。当前随着产品的频繁更新迭代,接口测试的需求也越来越频繁,当前的接口测试自动化程度较低,不能满足需求。
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.图1示出了本技术实施例提供的一种系统接口测试方法的流程示意图;
35.图2示出了本技术实施例提供的一种测试用例衍生组合示意图;
36.图3示出了本技术实施例提供的一种系统接口测试装置的结构示意图。
具体实施方式
37.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
38.在下面的描述中阐述了很多具体细节以便于充分理解本技术,但是本技术还可以采用其它不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本技术内涵的情况下做类似推广,因此本技术不受下面公开的具体实施例的限制。
39.随着当前社会的计算机发展,软件产品的迭代也在不断缩短,软件以需求为核心,用户需求频繁变化,开发周期不断缩短,产品频繁上线,用户对低质量的产品容忍度越来越低,所以集成、发布、测试频率大幅增加。
40.测试中包括系统接口测试,接口是主要用于外部系统和系统间以及内部各个子系统之间的交互点,定义交互点的特性,可通过这些交互点和特定的规则或协议,实现数据交互。接口测试的功能测试主要内容是测试接口实现的正确性、安全性、稳定性等。
41.每次软件发布前自动化测试用例的建设、维护、执行、分析变成亟待解决的问题。目前接口测试案例建设工作量大、测试范围选择难度高、实施复杂度高。某些产品紧急发布时接口测试用例数量巨大,若有新功能上线对以往测试用例需要回归验证,回归测试用例数量庞大,如果多人执行势必需要增加人力成本、硬件成本。
42.现有接口自动化测试方法的方法有诸多的不足:(1)测试用例与测试数据之间没有实现高效的对应关系,在测试用例执行的时候自动化程度偏低。(2)现有的方案在测试过程中对测试的颗粒度不好把握,尤其是在回归测试过程中,如何将优先的资源进行较为完整测试。(3)测试自动化系统需要单独建设,存在重复劳动。
43.由此可知,当前随着产品的频繁更新迭代,接口测试的需求也越来越频繁,当前的接口测试自动化程度较低,不能满足需求。
44.因此,现在亟需一种系统接口测试方法及装置。
45.基于此,本技术实施例提供了一种系统接口测试方法,方法包括:获取多个系统接口的最小数据集合,最小数据集合包括多个测试参数以及测试参数的多个测试取值,将被测接口的多个目标参数和最小数据集合中的多个测试参数进行匹配,得到目标参数对应的多个测试取值,对多个目标参数的多个所述测试取值进行衍生组合,得到多个测试用例,根据测试用例对被测接口批量进行系统接口测试,也就是说,利用已经经过测试的系统接口形成包括多个测试参数以及测试参数对应的测试取值的最小数据集合,后续就可以直接将被测接口的目标参数和最小数据集合中的测试参数进行匹配,直接获取得到目标参数的多个测试取值,而后对多个目标参数的多个测试取值进行衍生组合得到测试用例,对多个测试用例进行自动化批量测试,由此可见,可以通过最小数据集合以及衍生组合增加测试用例的覆盖范围,无需人工编写测试用例,实现系统接口的自动化测试,提高测试效率,并且能够保证测试效果。
46.为了更好地理解本技术的技术方案和技术效果,以下将结合附图对具体的实施例进行详细的描述。
47.参见图1,该图为本技术实施例提供的一种系统接口测试方法的流程示意图。
48.本实施例提供的系统接口测试方法包括以下步骤:
49.s101,获取系统接口多个测试参数的最小数据集合。
50.在本技术的实施例中,可以获取多个系统接口的多个测试参数,多个系统接口是已经经过测试的接口,因此每个测试参数都包括多个测试取值,可以将每个测试参数对应的测试取值都形成一个最小数据集合。
51.具体的,测试取值可以包括边界值,安全测试取值和反向取值。
52.在实际应用中,为了增加测试取值的可维护性,可以在最小数据集合中增加测试取值的描述信息,以便描述测试取值的测试意义。
53.在测试过程中,根据测试角度的不同,每个测试参数都会取不同的测试取值,有的是业务的边界值,有的是安全测试取值,有的是反向用例的取值,在一个成熟的业务系统中,在接口测试中,测试取值的差别不是很大,因此可以获取多个系统的测试取值应用于被测接口中,最小数据集合即将这些测试参数的不同取值与描述信息写在不同的字段中,也就是说,最小数据集合中除了测试取值外还额外标记了该测试取值的中文含义,在每个测试参数的最小数据集合中,字段中含有可以供接口直接使用的测试取值,测试取值的描述信息。最小数据集合包含每个参数的边界值和反向取值,最小数据集合的测试取值可以根据需求进行删减。
54.s102,将被测接口的目标参数和所述多个测试参数进行匹配,利用匹配得到的测试参数的最小数据集合得到所述目标参数对应的多个测试取值。
55.在本技术的实施例中,在获取得到多个测试参数的最小数据集合之后,可以将被测接口的目标参数和多个测试参数进行匹配,将和目标参数匹配结结果一致的测试参数的最小数据集合确定为目标参数对应的多个测试取值。也就是说,可以通过将目标参数和多个测试参数匹配,得到每个目标参数需要进行测试的情况。
56.在实际应用中,还可以预先获取被测接口的多个目标参数。
57.s103,对多个所述目标参数的多个所述测试取值进行衍生组合,得到多个测试用例。
58.在本技术的实施例中,在获取得到目标参数的多个测试取值之后,由于被测接口具有多个目标参数,因此可以对多个目标参数的多个测试取值进行衍生组合,形成多个测试用例,后续可以利用多个测试用例对被测接口进行测试。
59.在实际应用中,衍生组合得到的测试用例一般包含三个方面:(1)兜底测试:每个目标参数都需要进行校验,如目标参数为空,目标参数过长等。(2)功能测试:满足功能需求,有一定功能含义的测试用例,如对卡号这个目标参数来说,已销户的卡号对大多数交易来说就是一个有功能含义的反例。(3)安全测试:满足流程逃逸、横向越权等安全测试要求的测试用例。由此可见,利用最小测试集得到的目标参数的多个测试取值已经能够覆盖上述情况,因此利用多个测试取值进行衍生组合得到多个测试用例即可。
60.对多个目标参数的多个测试取值进行衍生组合的方法可以包括控制变量法、正交法和双因子组合法,具体的,可以根据控制变量法、正交法或双因子组合法对多个目标参数的边界值、安全测试取值和反向取值进行衍生组合,得到多个测试用例。
61.作为一种可能的实现方式,利用控制变量法对多个目标参数的多个测试取值进行衍生组合时,可以控制其他目标参数不变,修改某一目标参数的测试取值进行测试。首先输
入被测接口多个目标参数中的正向取值,随后选取某个目标参数去匹配最小数据集合中的所有测试取值,其他目标参数固定,依次循环生成测试用例,测试用例中包含可执行的接口报文信息。
62.参考图2所示,为本技术实施例提供的一种测试用例衍生组合示意图,图2中的被测接口包括3个目标参数,分别是用户(user)、电话号码(phonenum)和标识(flag),3个目标参数的正向取值分别wangwu、1341111111和1,正向取值进行组合即能够得到正例的测试用例,而后分别修改某一目标参数的测试取值得到多个测试用例。
63.作为另一种可能的实现方式,利用正交法对多个目标参数的多个测试取值进行衍生组合时,可以覆盖接口测试中的所有情况。当被测接口有多个目标参数时,将所有目标参数匹配最小数据集中的测试取值,将所有测试取值利用正交的方法进行组合。
64.作为又一种可能的实现方式,利用双因子组合法对多个目标参数的多个测试取值进行衍生组合时,适合没有明确正反向的高效接口自动化测试。
65.在实际应用过程中,不同的衍生组合方法对应不同的测试颗粒度,可根据真实业务需求选择相应的测试颗粒度来进行接口测试,在测试过程中需要对部分测试取值进行维护,在重复的回归测试过程中可以直接使用测试用例进行测试。
66.s104,根据所述测试用例对所述被测接口批量进行系统接口测试。
67.在本技术的实施例中,在获取得到多个测试用例之后,可以根据多个测试用例对被测接口进行批量系统接口测试。
68.测试用例中包含被测接口的可执行信息,可以将测试用例在第三方的平台中进行执行。本技术实施例可以采用jmeter脚本的形式进行自动化测试,可以生成jmeter的参数化文件,通过csv快速配置到jmeter脚本中,从而达到接口自动化测试的目的。
69.由此可见,本技术实施例提供的系统接口测试方法,通过最小数据集合以及衍生组合得到多个测试用例,增加测试用例的覆盖范围,保证了测试效果。衍生组合的方法简单,灵活性好,可根据不同的测试需求选择衍生组合的测试颗粒度,保证测试精确程度。将测试用例与测试取值相结合,实现一次编写,多次使用,可提高回归测测试效率,能够实现接口测试的自动化实施。
70.本技术实施例提供了一种系统接口测试方法,方法包括:获取多个系统接口的最小数据集合,最小数据集合包括多个测试参数以及测试参数的多个测试取值,将被测接口的多个目标参数和最小数据集合中的多个测试参数进行匹配,得到目标参数对应的多个测试取值,对多个目标参数的多个所述测试取值进行衍生组合,得到多个测试用例,根据测试用例对被测接口批量进行系统接口测试,也就是说,利用已经经过测试的系统接口形成包括多个测试参数以及测试参数对应的测试取值的最小数据集合,后续就可以直接将被测接口的目标参数和最小数据集合中的测试参数进行匹配,直接获取得到目标参数的多个测试取值,而后对多个目标参数的多个测试取值进行衍生组合得到测试用例,对多个测试用例进行自动化批量测试,由此可见,可以通过最小数据集合以及衍生组合增加测试用例的覆盖范围,无需人工编写测试用例,实现系统接口的自动化测试,提高测试效率,并且能够保证测试效果。
71.基于以上实施例提供的一种系统接口测试方法,本技术实施例还提供了一种系统接口测试装置,下面结合附图来详细说明其工作原理。
72.参见图3,该图为本技术实施例提供的一种系统接口测试装置的结构示意图。
73.本实施例提供的系统接口测试装置200包括:
74.第一获取单元210,用于获取系统接口多个测试参数的最小数据集合,所述最小数据集合包括所述测试参数的多个测试取值;
75.匹配单元220,用于将被测接口的目标参数和所述多个测试参数进行匹配,利用匹配得到的测试参数的最小数据集合得到所述目标参数对应的多个测试取值;
76.组合单元230,用于对多个所述目标参数的多个所述测试取值进行衍生组合,得到多个测试用例;
77.测试单元240,用于根据所述测试用例对所述被测接口进行批量系统接口测试。
78.可选地,所述组合单元,具体用于:
79.根据控制变量法、正交法或双因子组合法对多个所述目标参数的多个所述测试取值进行衍生组合,得到多个测试用例。
80.可选地,所述多个测试取值包括边界值,安全测试取值和反向取值;
81.所述组合单元,具体用于:
82.根据控制变量法、正交法或双因子组合法对多个所述目标参数的边界值、安全测试取值和反向取值进行衍生组合,得到多个测试用例。
83.可选地,所述装置还包括:
84.第二获取单元,用于获取所述被测接口的多个目标参数。
85.可选地,所述最小数据集合还包括所述测试取值的描述信息。
86.基于以上实施例提供的一种系统接口测试方法,本技术实施例还提供了一种系统接口测试设备,系统接口测试设备包括:
87.处理器和存储器,处理器的数量可以一个或多个。在本技术的一些实施例中,处理器和存储器可通过总线或其它方式连接。
88.存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和数据。存储器的一部分还可以包括nvram。存储器存储有操作系统和操作指令、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,操作指令可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
89.处理器控制终端设备的操作,处理器还可以称为cpu。
90.上述本技术实施例揭示的方法可以应用于处理器中,或者由处理器实现。处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、dsp、asic、fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
91.本技术实施例还提供一种计算机可读存储介质,用于存储程序代码,该程序代码用于执行前述各个实施例的方法中的任意一种实施方式。
92.在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
93.需要说明的是,本技术上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
94.当介绍本技术的各种实施例的元件时,冠词“一”、“一个”、“这个”和“所述”都意图表示有一个或多个元件。词语“包括”、“包含”和“具有”都是包括性的并意味着除了列出的元件之外,还可以有其它元件。
95.需要说明的是,本领域普通技术人员可以理解实现上述方法实施例中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)或随机存储记忆体(random access memory,ram)等。
96.可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包
括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
97.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元及模块可以是或者也可以不是物理上分开的。另外,还可以根据实际的需要选择其中的部分或者全部单元和模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
98.以上所述仅是本技术的优选实施方式,虽然本技术已以较佳实施例披露如上,然而并非用以限定本技术。任何熟悉本领域的技术人员,在不脱离本技术技术方案范围情况下,都可利用上述揭示的方法和技术内容对本技术技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本技术技术方案的内容,依据本技术的技术实质对以上实施例所做的任何的简单修改、等同变化及修饰,均仍属于本技术技术方案保护的范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献