接口测试方法、装置和存储介质及电子设备与流程

文档序号:30227472发布日期:2022-06-01 02:23阅读:134来源:国知局
接口测试方法、装置和存储介质及电子设备与流程

1.本发明涉及计算机领域,具体而言,涉及一种接口测试方法、装置和存储介质及电子设备。


背景技术:

2.相关技术对接口的测试往往是一个测试用例对应一个例接口,但在接口发生变化时该接口对应的测试用例往往也需要进行对应修改,工作量较大,且修改步骤复杂,自然也就降低了接口测试效率。因此,存在接口测试的效率较低的问题。
3.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

4.本发明实施例提供了一种接口测试方法、装置和存储介质及电子设备,以至少解决接口测试的效率较低的技术问题。
5.根据本发明实施例的一个方面,提供了一种接口测试方法,包括:获取目标测试用例、以及上述目标测试用例的预期反馈数据,其中,上述目标测试用例用于测试目标接口,上述预期反馈数据为预测上述目标接口通过测试时所反馈的数据;根据上述目标测试用例对上述目标接口进行第一目标测试,得到第一反馈数据,其中,上述第一反馈数据为上述目标接口结束上述第一目标测试时所反馈的数据;在上述第一反馈数据与上述预期反馈数据的对比结果不满足预置对比条件、且上述第一反馈数据满足测试通过条件的情况下,确定上述目标接口通过测试,并将上述第一反馈数据作为上述目标测试用例的新的预期反馈数据,其中,上述目标接口被设置为在上述对比结果满足上述预置对比条件的情况下通过测试。
6.根据本发明实施例的另一方面,还提供了一种接口测试装置,包括:第一获取单元,用于获取目标测试用例、以及上述目标测试用例的预期反馈数据,其中,上述目标测试用例用于测试目标接口,上述预期反馈数据为预测上述目标接口通过测试时所反馈的数据;第一测试单元,用于根据上述目标测试用例对上述目标接口进行第一目标测试,得到第一反馈数据,其中,上述第一反馈数据为上述目标接口结束上述第一目标测试时所反馈的数据;第一确定单元,用于在上述第一反馈数据与上述预期反馈数据的对比结果不满足预置对比条件、且上述第一反馈数据满足测试通过条件的情况下,确定上述目标接口通过测试,并将上述第一反馈数据作为上述目标测试用例的新的预期反馈数据,其中,上述目标接口被设置为在上述对比结果满足上述预置对比条件的情况下通过测试。
7.作为一种可选的方案,包括:第二获取单元,用于在上述根据上述目标测试用例对上述目标接口进行第一目标测试,得到第一反馈数据之后,获取上述目标接口的第一状态,其中,上述第一状态用于表示上述目标接口的配置状态;第一比对单元,用于在上述第一状态不同于上述预期反馈数据对应的第二状态的情况下,判断上述对比结果是否满足上述预置对比条件、以及判断上述第一反馈数据是否满足上述测试通过条件,其中,上述预期反馈
数据为预测第二状态的目标接口通过测试时所反馈的数据;第二获取单元,用于在上述第一状态为上述第二状态的情况下,判断上述对比结果是否满足上述预置对比条件。
8.作为一种可选的方案,包括:第二确定单元,用于在上述第一状态不同于上述预期反馈数据对应的第二状态的情况下,判断上述对比结果是否满足上述预置对比条件、以及判断上述第一反馈数据是否满足上述测试通过条件之后,在上述对比结果不满足上述预置对比条件、且上述第一反馈数据满足测试上述通过条件的情况下,确定上述目标接口通过测试,并将上述第一反馈数据作为上述新的预期反馈数据;或,第三确定单元,用于在上述第一状态不同于上述预期反馈数据对应的第二状态的情况下,判断上述对比结果是否满足上述预置对比条件、以及判断上述第一反馈数据是否满足上述测试通过条件之后,在上述对比结果满足上述预置对比条件的情况下,确定上述目标接口通过测试。
9.作为一种可选的方案,包括:第四确定单元,用于在上述第一状态不同于上述预期反馈数据对应的第二状态的情况下,判断上述对比结果是否满足上述预置对比条件、以及判断上述第一反馈数据是否满足上述测试通过条件之后,在上述对比结果不满足上述预置对比条件的情况下,确定上述目标接口未通过测试;或,第五确定单元,用于在上述第一状态不同于上述预期反馈数据对应的第二状态的情况下,判断上述对比结果是否满足上述预置对比条件、以及判断上述第一反馈数据是否满足上述测试通过条件之后,在上述对比结果满足上述预置对比条件的情况下,确定上述目标接口通过测试。
10.作为一种可选的方案,上述装置包括:第三获取单元,用于在上述获取上述目标接口的第一状态之前,获取接口调整请求,其中,上述接口调整请求用于请求调整处于上述第一状态的上述目标接口的配置参数;响应上述接口调整请求,调整上述目标接口的配置参数,得到上述目标接口的新的配置参数;上述第二获取单元,包括:获取模块,用于根据上述新的配置参数获取上述目标接口的新的第一状态。
11.作为一种可选的方案,上述装置包括:第三获取单元,用于在上述获取上述目标接口的第一状态之前,获取接口调整请求,其中,上述接口调整请求用于请求调整处于上述第一状态的上述目标接口的配置参数;响应上述接口调整请求,调整上述目标接口的配置参数,得到上述目标接口的新的配置参数;上述第二获取单元,包括:获取模块,用于根据上述新的配置参数获取上述目标接口的新的第一状态。
12.作为一种可选的方案,包括:比对模块,用于在上述根据上述新的配置参数获取上述目标接口的新的第一状态之后,在上述新的第一状态不同于上述第二状态的情况下,判断上述对比结果是否满足上述预置对比条件、以及判断上述第一反馈数据是否满足上述测试通过条件;确定模块,用于在上述根据上述新的配置参数获取上述目标接口的新的第一状态之后,在上述对比结果满足上述预置对比条件、且上述第一反馈数据不满足测试上述通过条件的情况下,确定上述目标接口未通过测试,并获取用例提示信息,其中,上述用例提示信息用于提示上述目标测试用例不适用于上述新的第一状态的上述目标接口。
13.作为一种可选的方案,包括:第二试单元,用于在上述将上述第一反馈数据作为上述目标测试用例的新的预期反馈数据之后,根据上述目标测试用例对上述目标接口进行第二目标测试,得到第二反馈数据,其中,上述第二反馈数据为上述目标接口结束上述第二目标测试时所反馈的数据;第六确定单元,用于在上述将上述第一反馈数据作为上述目标测试用例的新的预期反馈数据之后,在上述第二反馈数据与上述新的预期反馈数据的对比结
果不满足上述预置对比条件、且上述第二反馈数据不满足上述测试通过条件的情况下,确定上述目标接口未通过测试。
14.作为一种可选的方案,上述第一确定单元,包括:区别模块,用于在上述第一反馈数据与上述预期反馈数据之间的区别大于或等于目标阈值、且上述第一反馈数据满足上述测试通过条件的情况下,确定上述目标接口通过测试,并将上述第一反馈数据作为上述目标测试用例的上述新的预期反馈数据,其中,上述对比结果被设置为在上述第一反馈数据与上述预期反馈数据之间的区别小于上述目标阈值的情况下满足上述预置对比条件。
15.根据本技术实施例的又一个方面,提供一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行如以上接口测试方法。
16.根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的接口测试方法。
17.在本发明实施例中,获取目标测试用例、以及上述目标测试用例的预期反馈数据,其中,上述目标测试用例用于测试目标接口,上述预期反馈数据为预测上述目标接口通过测试时所反馈的数据;根据上述目标测试用例对上述目标接口进行第一目标测试,得到第一反馈数据,其中,上述第一反馈数据为上述目标接口结束上述第一目标测试时所反馈的数据;在上述第一反馈数据与上述预期反馈数据的对比结果不满足预置对比条件、且上述第一反馈数据满足测试通过条件的情况下,确定上述目标接口通过测试,并将上述第一反馈数据作为上述目标测试用例的新的预期反馈数据,其中,上述目标接口被设置为在上述对比结果满足上述预置对比条件的情况下通过测试,利用在上述第一反馈数据与上述预期反馈数据的对比结果不满足预置对比条件、但上述第一反馈数据满足测试通过条件的情况下,将上述第一反馈数据作为上述目标测试用例的新的预期反馈数据的方式,进而达到了高效完成对测试用例的更新的目的,从而实现了提高接口测试的效率的技术效果,进而解决了接口测试的效率较低的技术问题。
附图说明
18.此处所说明的附图用来提供对本发明的进一步理解,构成本技术的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
19.图1是根据本发明实施例的一种可选的接口测试方法的应用环境的示意图;
20.图2是根据本发明实施例的一种可选的接口测试方法的流程的示意图;
21.图3是根据本发明实施例的一种可选的接口测试方法的示意图;
22.图4是根据本发明实施例的另一种可选的接口测试方法的示意图;
23.图5是根据本发明实施例的一种可选的接口测试装置的示意图;
24.图6是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
25.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的
附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
26.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
27.根据本发明实施例的一个方面,提供了一种接口测试方法,可选地,作为一种可选的实施方式,上述接口测试方法可以但不限于应用于如图1所示的环境中。其中,可以但不限于包括用户设备102、网络110及服务器112,其中,该用户设备102上可以但不限于包括显示器108、处理器106及存储器104。
28.具体过程可如下步骤:
29.步骤s102,用户设备102获取对目标接口的测试请求,其中,测试请求用于请求对目标接口进行测试;
30.步骤s104-s106,用户设备102通过网络110将上述测试请求发送给服务器112;
31.步骤s108,服务器112通过数据库114查找测试请求所对应的目标测试用例、以及目标测试用例的预期反馈数据,并通过处理引擎116利用该目标测试用例对目标接口进行测试处理,从而得到第一反馈数据;再通过处理引擎116对第一反馈数据与预期反馈数据进行比对、以及判断第一反馈数据是否满足测试通过条件,如在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据;进而生成对目标接口的测试结果;
32.步骤s110-s112,服务器112通过网络110将该测试结果发送给用户设备102,用户设备102中的处理器106将测试结果显示在显示器108中,并将测试结果存储在存储器104中。
33.除图1示出的示例之外,上述步骤可以由用户设备102独立完成,即由用户设备102执行对目标接口的测试、对第一反馈数据与预期反馈数据的比对、对第一反馈数据是否满足测试通过条件的判断、对目标接口的测试结果的生成等步骤,从而减轻服务器的处理压力。该用户设备102包括但不限于手持设备(如手机)、笔记本电脑、台式电脑、车载设备等,本发明并不限制用户设备102的具体实现方式。
34.可选地,作为一种可选的实施方式,如图2所示,接口测试方法包括:
35.s202,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;
36.s204,根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据为目标接口结束第一目标测试时所反馈的数据;
37.s206,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,目标接口被设置为在对比结果满足预置对比条件的情况下通过测试。
38.可选地,在本实施例中,上述接口测试方法可以但不限于应用在接口自动化测试平台的应用场景中,如把目标测试用例在excel中写进该自动化测试平台,以驱动第一目标测试的执行,具体的通过json全校验(目标测试用例)和excel结果数据(预期反馈数据)写入,先把用例请求数据组织起来,然后对结果数据进行筛选比对,最后把测试结果数据保存起来,作为自动化测试的期望结果,节省了撰写用例结果判断的时间;进一步当接口返回发生变化时,确定期望和差异的原因,如果没有问题,则把新的测试结果替换旧的结果(将第一反馈数据作为目标测试用例的新的预期反馈数据),达到自动更新自动化测试的期望结果的目的。
39.可选地,在本实施例中,测试用例(test case)可以但不限于是指对一项或多项特定的软件产品(如目标接口)进行测试任务的描述,体现测试方案、方案、技术和策略,其内容可以但不限于包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档;概括而言,测试用例可以但不限于是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。
40.可选地,在本实施例中,预期反馈数据可以但不限理解为目标测试用例的期望值,进一步举例说明,在利用该目标测试用例进行测试后得到反馈的测试数据,并基于该测试数据与该预期反馈数据之间的区别以确定当前测试是否达到通过条件;但在一些场景中,待测试对象(如目标接口)可能因需求等原因被修改,进而导致原有的预期反馈数据可能不再适用于原有的测试场景,在此基础上,需外加对反馈数据的判断,在该反馈数据,满足测试通过条件的情况下,即使该反馈数据不同于原有的预期反馈数据,仍确定通过测试,并将该反馈数据作为新的预期反馈数据,以代替原有的预期反馈数据。
41.可选地,在本实施例中,测试通过条件可以但不限于为测试时目标接口的运行逻辑所存在的bug数量小于或等于问题阈值,进而确定该目标接口满足测试通过条件;反之同理,测试时目标接口的运行逻辑所存在的bug数量大于该问题阈值,进而确定该目标接口不满足测试通过条件。或为提高测试通过条件的准确性,可以但不限于采用人工的方式人为确定反馈数据是否满足测试通过条件。
42.需要说明的是,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据为目标接口结束第一目标测试时所反馈的数据;在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,目标接口被设置为在对比结果满足预置对比条件的情况下通过测试。
43.进一步举例说明,可选的例如图3所示,响应于接口自动化测试平台对接口a(目标接口)触发的测试请求,获取目标测试用例302、以及目标测试用例302的预期反馈数据304,其中,目标测试用例302用于测试目标接口,预期反馈数据304为预测目标接口通过测试时
所反馈的数据;进一步根据目标测试用例302对目标接口进行第一目标测试,得到第一反馈数据306,其中,第一反馈数据306为目标接口结束第一目标测试时所反馈的数据;在第一反馈数据306与预期反馈数据304之间的区别大于或等于目标阈值、但第一反馈数据306满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据306作为目标测试用例302的新的预期反馈数据308。
44.通过本技术提供的实施例,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据为目标接口结束第一目标测试时所反馈的数据;在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,利用在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,将第一反馈数据作为目标测试用例的新的预期反馈数据的方式,进而达到了高效完成对测试用例的更新的目的,从而实现了提高接口测试的效率的技术效果。
45.作为一种可选的方案,在根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据之后,包括:
46.s1,获取目标接口的第一状态,其中,第一状态用于表示目标接口的配置状态;
47.s2,在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件,其中,预期反馈数据为预测第二状态的目标接口通过测试时所反馈的数据;
48.s3,在第一状态为第二状态的情况下,判断对比结果是否满足预置对比条件。
49.可选地,在本实施例中,为提高测试效率先对目标接口的配置状态进行判断,判断该目标接口的配置状态是否还为目标测试用例所对应的原始状态(第二状态),若是则优先与预期反馈数据进行比对,若否则在与预期反馈数据进行比对的基础上进一步判断第一反馈数据是否满足测试通过条件。
50.通过本技术提供的实施例,获取目标接口的第一状态,其中,第一状态用于表示目标接口的配置状态;在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件,其中,预期反馈数据为预测第二状态的目标接口通过测试时所反馈的数据;在第一状态为第二状态的情况下,判断对比结果是否满足预置对比条件,实现了提高接口测试效率的效果。
51.作为一种可选的方案,在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件之后,包括:
52.s1,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为新的预期反馈数据;或,
53.s2,在对比结果满足预置对比条件的情况下,确定目标接口通过测试。
54.可选地,在本实施例中,为提高接口测试的多样性,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目
标接口通过测试,并将第一反馈数据作为新的预期反馈数据;或,在对比结果满足预置对比条件的情况下,确定目标接口通过测试。
55.通过本技术提供的实施例,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为新的预期反馈数据;或,在对比结果满足预置对比条件的情况下,确定目标接口通过测试,实现了接口测试的多样性的效果。
56.作为一种可选的方案,在第一状态为第二状态的情况下,在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件之后,包括:
57.s1,在对比结果不满足预置对比条件的情况下,确定目标接口未通过测试;或,
58.s2,在对比结果满足预置对比条件的情况下,确定目标接口通过测试。
59.可选地,在本实施例中,为提高接口测试的多样性,在对比结果不满足预置对比条件的情况下,确定目标接口未通过测试;或,在对比结果满足预置对比条件的情况下,确定目标接口通过测试。
60.通过本技术提供的实施例,在对比结果不满足预置对比条件的情况下,确定目标接口未通过测试;或,在对比结果满足预置对比条件的情况下,确定目标接口通过测试,实现了提高接口测试的多样性的效果。
61.作为一种可选的方案,在获取目标接口的第一状态之前,包括:获取接口调整请求,其中,接口调整请求用于请求调整处于第一状态的目标接口的配置参数;响应接口调整请求,调整目标接口的配置参数,得到目标接口的新的配置参数;
62.作为一种可选的方案,获取目标接口的第一状态,包括:根据新的配置参数获取目标接口的新的第一状态。
63.可选地,在本实施例中,接口调整请求的获取可以但不限于有新需求进来时,触发接口调整请求;进一步响应于接口调整请求控制(目标)接口发生变更,再跑一下原来的测试用例,把不通过的用例根据服务端逻辑确认有没有问题,有问题提bug,直到所有测试结果都正确。
64.作为一种可选的方案,在根据新的配置参数获取目标接口的新的第一状态之后,包括:
65.s1,在新的第一状态不同于第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件;
66.s2,在对比结果满足预置对比条件、且第一反馈数据不满足测试通过条件的情况下,确定目标接口未通过测试,并获取用例提示信息,其中,用例提示信息用于提示目标测试用例不适用于新的第一状态的目标接口。
67.可选地,在本实施例中,为提高测试结果的直观性,尤其是为提高提示目标测试用例不适用于新的第一状态的目标接口的直观性,在对比结果满足预置对比条件、且第一反馈数据不满足测试通过条件的情况下,确定目标接口未通过测试,并显示用例提示信息。
68.通过本技术提供的实施例,在新的第一状态不同于第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件;在对比结果满足预置对比条件、且第一反馈数据不满足测试通过条件的情况下,确定目标接口未通过
测试,并获取用例提示信息,其中,用例提示信息用于提示目标测试用例不适用于新的第一状态的目标接口,实现了提高测试结果的直观性的效果。
69.作为一种可选的方案,在将第一反馈数据作为目标测试用例的新的预期反馈数据之后,包括:
70.s1,根据目标测试用例对目标接口进行第二目标测试,得到第二反馈数据,其中,第二反馈数据为目标接口结束第二目标测试时所反馈的数据;
71.s2,在第二反馈数据与新的预期反馈数据的对比结果不满足预置对比条件、且第二反馈数据不满足测试通过条件的情况下,确定目标接口未通过测试。
72.作为一种可选的方案,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,包括:
73.在第一反馈数据与预期反馈数据之间的区别大于或等于目标阈值、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,对比结果被设置为在第一反馈数据与预期反馈数据之间的区别小于目标阈值的情况下满足预置对比条件。
74.作为一种可选的方案,为方便理解,将上述接口测试方法应用在http接口的测试场景中,可选地如图4所示,具体步骤如下:
75.步骤s402,撰写http输入参数;
76.步骤s404,调用服务端http请求,在excel中存入测试结果;
77.步骤s406,根据服务端逻辑确定测试结果是否正确;
78.步骤s408,调用封装json断言方法,忽略不需要校验的sn字段等;
79.步骤s410,测试用例撰写完成;
80.步骤s412,接口增加新的业务需求,接口出现变更;
81.步骤s414,执行原有的测试用例;
82.步骤s416,执行出错的用例结果比对,如果新结果没有问题则将该新结果作为新的测试结果存入excel;
83.通过本技术提供的实施例,撰写http输入参数,合理设置测试用例,并写入excel中;对每条测试用例调用http得到测试结果集,并把结果集写入期望结果中;对每条结果根据服务端逻辑,确认测试结果正确与否,如果有问题提bug,直到所有结果都是对的;调用json全串比对,忽略掉不需要校验的字段,sn等;把测试用例留作以后回归测试用例;如果有新需求进来,接口有变更,再跑一下原来的测试用例,把不通过的用例根据服务端逻辑确认有没有问题,有问题提bug,直到所有测试结果都正确;把测试用例全部存入测试结果,形成最新的测试用例,达到了节省了撰写用例结果判断的时间、自动更新测试结果集的目的,实现了提高接口测试的效率的效果。
84.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
85.根据本发明实施例的另一个方面,还提供了一种用于实施上述接口测试方法的接口测试装置。如图5所示,该装置包括:
86.第一获取单元502,用于获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;
87.第一测试单元504,用于根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据为目标接口结束第一目标测试时所反馈的数据;
88.第一确定单元506,用于在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,目标接口被设置为在对比结果满足预置对比条件的情况下通过测试。
89.可选地,在本实施例中,上述接口测试装置可以但不限于应用在接口自动化测试平台的应用场景中,如把目标测试用例在excel中写进该自动化测试平台,以驱动第一目标测试的执行,具体的通过json全校验(目标测试用例)和excel结果数据(预期反馈数据)写入,先把用例请求数据组织起来,然后对结果数据进行筛选比对,最后把测试结果数据保存起来,作为自动化测试的期望结果,节省了撰写用例结果判断的时间;进一步当接口返回发生变化时,确定期望和差异的原因,如果没有问题,则把新的测试结果替换旧的结果(将第一反馈数据作为目标测试用例的新的预期反馈数据),达到自动更新自动化测试的期望结果的目的。
90.可选地,在本实施例中,测试用例(test case)可以但不限于是指对一项或多项特定的软件产品(如目标接口)进行测试任务的描述,体现测试方案、方案、技术和策略,其内容可以但不限于包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,最终形成文档;概括而言,测试用例可以但不限于是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,用于核实是否满足某个特定软件需求。
91.可选地,在本实施例中,预期反馈数据可以但不限理解为目标测试用例的期望值,进一步举例说明,在利用该目标测试用例进行测试后得到反馈的测试数据,并基于该测试数据与该预期反馈数据之间的区别以确定当前测试是否达到通过条件;但在一些场景中,待测试对象(如目标接口)可能因需求等原因被修改,进而导致原有的预期反馈数据可能不再适用于原有的测试场景,在此基础上,需外加对反馈数据的判断,在该反馈数据,满足测试通过条件的情况下,即使该反馈数据不同于原有的预期反馈数据,仍确定通过测试,并将该反馈数据作为新的预期反馈数据,以代替原有的预期反馈数据。
92.可选地,在本实施例中,测试通过条件可以但不限于为测试时目标接口的运行逻辑所存在的bug数量小于或等于问题阈值,进而确定该目标接口满足测试通过条件;反之同理,测试时目标接口的运行逻辑所存在的bug数量大于该问题阈值,进而确定该目标接口不满足测试通过条件。或为提高测试通过条件的准确性,可以但不限于采用人工的方式人为确定反馈数据是否满足测试通过条件。
93.需要说明的是,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据
为目标接口结束第一目标测试时所反馈的数据;在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据。
94.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
95.通过本技术提供的实施例,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据为目标接口结束第一目标测试时所反馈的数据;在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,利用在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,将第一反馈数据作为目标测试用例的新的预期反馈数据的方式,进而达到了高效完成对测试用例的更新的目的,从而实现了提高接口测试的效率的技术效果。
96.作为一种可选的方案,包括:
97.第二获取单元,用于在根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据之后,获取目标接口的第一状态,其中,第一状态用于表示目标接口的配置状态;
98.第一比对单元,用于在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件,其中,预期反馈数据为预测第二状态的目标接口通过测试时所反馈的数据;
99.第二获取单元,用于在第一状态为第二状态的情况下,判断对比结果是否满足预置对比条件。
100.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
101.作为一种可选的方案,包括:
102.第二确定单元,用于在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件之后,在对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为新的预期反馈数据;或,
103.第三确定单元,用于在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件之后,在对比结果满足预置对比条件的情况下,确定目标接口通过测试。
104.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
105.作为一种可选的方案,包括:
106.第四确定单元,用于在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件之后,在对比结果不满足预置对比条件的情况下,确定目标接口未通过测试;或,
107.第五确定单元,用于在第一状态不同于预期反馈数据对应的第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件之后,在对比结果满足预置对比条件的情况下,确定目标接口通过测试。
108.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
109.作为一种可选的方案,装置包括:第三获取单元,用于在获取目标接口的第一状态之前,获取接口调整请求,其中,接口调整请求用于请求调整处于第一状态的目标接口的配置参数;响应接口调整请求,调整目标接口的配置参数,得到目标接口的新的配置参数;
110.第二获取单元,包括:获取模块,用于根据新的配置参数获取目标接口的新的第一状态。
111.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
112.作为一种可选的方案,包括:
113.比对模块,用于在根据新的配置参数获取目标接口的新的第一状态之后,在新的第一状态不同于第二状态的情况下,判断对比结果是否满足预置对比条件、以及判断第一反馈数据是否满足测试通过条件;
114.确定模块,用于在根据新的配置参数获取目标接口的新的第一状态之后,在对比结果满足预置对比条件、且第一反馈数据不满足测试通过条件的情况下,确定目标接口未通过测试,并获取用例提示信息,其中,用例提示信息用于提示目标测试用例不适用于新的第一状态的目标接口。
115.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
116.作为一种可选的方案,包括:
117.第二试单元,用于在将第一反馈数据作为目标测试用例的新的预期反馈数据之后,根据目标测试用例对目标接口进行第二目标测试,得到第二反馈数据,其中,第二反馈数据为目标接口结束第二目标测试时所反馈的数据;
118.第六确定单元,用于在将第一反馈数据作为目标测试用例的新的预期反馈数据之后,在第二反馈数据与新的预期反馈数据的对比结果不满足预置对比条件、且第二反馈数据不满足测试通过条件的情况下,确定目标接口未通过测试。
119.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
120.作为一种可选的方案,第一确定单元506,包括:
121.区别模块,用于在第一反馈数据与预期反馈数据之间的区别大于或等于目标阈值、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,对比结果被设置为在第一反馈数据与预期反馈数据之间的区别小于目标阈值的情况下满足预置对比条件。
122.具体实施例可以参考上述接口测试方法中所示示例,本示例中在此不再赘述。
123.根据本发明实施例的又一个方面,还提供了一种用于实施上述接口测试方法的电子设备,如图6所示,该电子设备包括存储器602和处理器604,该存储器602中存储有计算机程序,该处理器604被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
124.可选地,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
125.可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
126.s1,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;
127.s2,根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,
第一反馈数据为目标接口结束第一目标测试时所反馈的数据;
128.s3,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,目标接口被设置为在对比结果满足预置对比条件的情况下通过测试。
129.可选地,本领域普通技术人员可以理解,图6所示的结构仅为示意,电子设备也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobile internet devices,mid)、pad等终端设备。图6其并不对上述电子设备的结构造成限定。例如,电子设备还可包括比图6中所示更多或者更少的组件(如网络接口等),或者具有与图6所示不同的配置。
130.其中,存储器602可用于存储软件程序以及模块,如本发明实施例中的接口测试方法和装置对应的程序指令/模块,处理器604通过运行存储在存储器602内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的接口测试方法。存储器602可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器602可进一步包括相对于处理器604远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器602具体可以但不限于用于存储目标测试用例、预期反馈数据以及第一反馈数据等信息。作为一种示例,如图6所示,上述存储器602中可以但不限于包括上述接口测试装置中的第一获取单元502、第一测试单元504及第一确定单元506。此外,还可以包括但不限于上述接口测试装置中的其他模块单元,本示例中不再赘述。
131.可选地,上述的传输装置606用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置606包括一个网络适配器(network interface controller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置606为射频(radio frequency,rf)模块,其用于通过无线方式与互联网进行通讯。
132.此外,上述电子设备还包括:显示器608,用于显示上述目标测试用例、预期反馈数据以及第一反馈数据等信息;和连接总线610,用于连接上述电子设备中的各个模块部件。
133.在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(peer to peer,简称p2p)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
134.根据本技术的一个方面,提供了一种计算机可读存储介质,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述接口测试方法。
135.可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
136.s1,获取目标测试用例、以及目标测试用例的预期反馈数据,其中,目标测试用例
用于测试目标接口,预期反馈数据为预测目标接口通过测试时所反馈的数据;
137.s2,根据目标测试用例对目标接口进行第一目标测试,得到第一反馈数据,其中,第一反馈数据为目标接口结束第一目标测试时所反馈的数据;
138.s3,在第一反馈数据与预期反馈数据的对比结果不满足预置对比条件、且第一反馈数据满足测试通过条件的情况下,确定目标接口通过测试,并将第一反馈数据作为目标测试用例的新的预期反馈数据,其中,目标接口被设置为在对比结果满足预置对比条件的情况下通过测试。
139.可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-only memory,rom)、随机存取器(random access memory,ram)、磁盘或光盘等。
140.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
141.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
142.在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
143.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
144.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
145.另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
146.以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1