接口测试中的错误信息归因方法、装置、及存储介质与流程

未命名 07-23 阅读:72 评论:0


1.本技术涉及计算机技术领域,具体而言,本技术涉及一种接口测试中的错误信息归因方法、装置及存储介质。


背景技术:

2.随着互联网行业的迅速发展,各公司对持续集成和持续部署的要求日趋强烈。而自动化测试是其中不可或缺的一部分。自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程,即用户通过向终端机器输入设计好的测试用例以使终端机器自动完成对目标接口的测试过程。
3.现有技术的方案中,用户将测试用例输入到终端后,终端会将测试用例发送到目标接口上并通过目标接口执行测试用例中的相关步骤,并输出对应的测试结果,测试结果仅包括正确或错误,若测试结果为错误,则还包括此次错误对应的错误信息。
4.但是,上述方案中,若输出的测试结果为错误,同时输出的此次错误对应的错误信息是用户读取后无法直接判断出错因的,需要进一步人工介入具体分析并归纳错因。这样的方式由于分析错因的人不同,导致分析错因的标准并不统一,最终判断出的错因不准确。且当测试用例较多时,每个用例都需要这样人工分析,导致整个过程的效率较低,成本较高。


技术实现要素:

5.本技术的目的旨在至少能解决上述的技术缺陷之一,本技术实施例所提供的技术方案如下:
6.第一方面,本技术实施例提供了一种接口测试中的错误归因方法,包括:
7.接收用户针对目标接口输入的至少一个测试用例;其中,测试用例中包含至少一个预设步骤;
8.对于每一测试用例,执行测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;
9.根据任一预设步骤确定对应的预设错误因素库,并根据预设错误因素库和错误信息获取错误因素,预设错误因素库包括不同错误信息对应的错误因素。
10.在本技术的一种可选实施例中,根据任一预设步骤确定对应的预设错误因素库,具体包括:
11.根据任一预设步骤对测试用例进行标记,得到标记结果;
12.根据标记结果确定对应的预设错误因素库。
13.在本技术的一种可选实施例中,根据任一预设步骤对测试用例进行标记,具体包括:
14.若任一预设步骤为非网络请求步骤,以第一类型标记对测试用例进行标记;
15.第一类型标记对应的预设错误因素库为预设关键字匹配错误因素库,根据预设错
误因素库和错误信息获取错误因素,具体包括:
16.根据错误信息从预设关键字匹配错误因素库中获取错误因素。
17.在本技术的一种可选实施例中,根据任一预设步骤对测试用例进行标记,具体包括:
18.若任一预设步骤为网络请求步骤,以第二类型标记对测试用例进行标记;
19.第二类型标记对应的预设错误因素库为预设超文本传输协议http状态码错误因素库和预设关键词匹配错误因素库,根据预设错误因素库和错误信息获取错误因素,具体包括:
20.将错误信息与预设http状态码错误因素库中的错误因素进行匹配;
21.若从预设http状态码错误因素库中匹配到对应的错误因素,则将匹配到的错误因素作为错误信息对应的错误因素;若从预设http状态码错误因素库中未匹配到对应的错误因素,则根据错误信息从预设关键字匹配错误因素库中获取错误因素。
22.在本技术的一种可选实施例中,预设http状态码错误因素库中存储有不同http状态码对应的错误因素;
23.将错误信息与预设http状态码错误因素库中的错误因素进行匹配,具体包括:
24.获取错误信息中包含的http状态码,并将预设http状态码错误因素库中http状态码对应的错误因素,作为错误信息对应的错误因素。
25.在本技术的一种可选实施例中,预设关键字匹配错误因素库中存储有不同预设关键字对应的错误因素;
26.根据错误信息从预设关键字匹配错误因素库中获取错误因素,包括:
27.获取错误信息中包含的预设关键字,并将预设错误因素库中预设关键字对应的错误因素,作为错误信息对应的错误因素。
28.在本技术的一种可选实施例中,该方法具体还可以包括:
29.在根据预设错误因素库和错误信息获取错误因素之后,将测试用例的标识、错误信息以及错误因素一一对应存储至预设数据库中;
30.对于任一测试用例,执行任一测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息,若获取到的错误信息和任一测试用例的标识在预设数据库中有对应存储,则从预设数据库中获取任一测试用例的标识和错误信息对应的错误因素。
31.第二方面,本技术实施例提供了一种接口测试中的错误归因装置,包括:
32.测试用例接收模块,用于接收用户针对目标接口输入的至少一个测试用例;其中,测试用例中包含至少一个预设步骤;
33.错误信息获取模块,用于执行测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;
34.错误因素获取模块,用于根据任一预设步骤确定对应的预设错误因素库,并根据预设错误因素库和错误信息获取错误因素,预设错误因素库包括不同错误信息对应的错误因素。
35.在本技术的一种可选实施例中,错误信息获取模块具体用于:
36.根据任一预设步骤对测试用例进行标记,得到标记结果;
37.根据标记结果确定对应的预设错误因素库。
38.在本技术的一种可选实施例中,错误信息获取模块进一步用于:
39.若任一预设步骤为非网络请求步骤,以第一类型标记对测试用例进行标记;
40.错误因素获取模块具体用于:
41.根据错误信息从预设关键字匹配错误因素库中获取错误因素。
42.在本技术的一种可选实施例中,错误信息获取模块具体用于:
43.若任一预设步骤为网络请求步骤,以第二类型标记对测试用例进行标记;
44.错误因素获取模块具体用于:
45.将错误信息与预设http状态码错误因素库中的错误因素进行匹配;
46.若从预设http状态码错误因素库中匹配到对应的错误因素,则将匹配到的错误因素作为错误信息对应的错误因素;若从预设http状态码错误因素库中未匹配到对应的错误因素,则根据错误信息从预设关键字匹配错误因素库中获取错误因素。
47.在本技术的一种可选实施例中,错误因素获取模块进一步用于:
48.获取错误信息中包含的http状态码,并将预设http状态码错误因素库中http状态码对应的错误因素,作为错误信息对应的错误因素。
49.在本技术的一种可选实施例中,错误因素获取模块进一步用于:
50.根据错误信息从预设关键字匹配错误因素库中获取错误因素,包括:
51.获取错误信息中包含的预设关键字,并将预设错误因素库中预设关键字对应的错误因素,作为错误信息对应的错误因素。
52.在本技术的一种可选实施例中,错误因素获取模块还可以用于:
53.在根据预设错误因素库和错误信息获取错误因素之后,将测试用例的标识、错误信息以及错误因素一一对应存储至预设数据库中;
54.对于任一测试用例,执行任一测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息,若获取到的错误信息和任一测试用例的标识在预设数据库中有对应存储,则从预设数据库中获取任一测试用例的标识和错误信息对应的错误因素。
55.第三方面,本技术实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序;
56.处理器执行计算机程序以实现第一方面实施例或第一方面任一可选实施例中所提供的方法。
57.第四方面,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现第一方面实施例或第一方面任一可选实施例中所提供的方法。
58.本技术实施例提供的技术方案带来的有益效果是:
59.本技术的方案,使机器终端获取到的预设步骤的错误信息后,根据错误信息和预设错误因素库可直接确定出对应的错误因素,减少了人工分析的过程,提高了整个测试流程的效率,降低了成本。同时采用终端机器获取错误因素,使获取错误因素的标准较为统一,进而使得最终分析错误因素更加准确。
附图说明
60.为了更清楚地说明本技术实施例中的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍。
61.图1为本技术实施例提供的一种接口测试中的错误归因方法的流程示意图;
62.图2为本技术实施例的一个示例中对各预设步骤进行标记的流程示意图;
63.图3为本技术实施例的一个示例中针对各标记匹配错误因素过程的流程示意图;
64.图4为本技术实施例提供的一个示例中对错误信息和错误归因进行存储的流程示意图;
65.图5为本技术实施例提供的一种接口测试中的错误归因装置的结构框图;
66.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
67.下面结合本技术中的附图描述本技术的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本技术实施例的技术方案的示例性描述,对本技术实施例的技术方案不构成限制。
68.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作、元件和/或组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、元件、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“a和/或b”可以实现为“a”,或者实现为“b”,或者实现为“a和b”。
69.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
70.下面通过对几个示例性实施方式的描述,对本技术实施例的技术方案以及本技术的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
71.图1为本技术实施例提供一种接口测试中的错误归因方法的流程示意图,该方法的执行主体可以是机器终端,如图1所示,该方法可以包括:
72.步骤s101,接收用户针对目标接口输入的至少一个测试用例;其中,测试用例中包含至少一个预设步骤。
73.其中,目标接口为需要测试的接口。测试用例是由对目标接口进行测试的步骤集合,每个测试用例由多个预设步骤组成,在本技术的实施例中,可由四个预设步骤组成,分别是数据准备步骤、数据恢复步骤、网络请求步骤、结果校验步骤,每个预设步骤由一个函数表示。预设步骤即对目标接口进行测试的步骤。
74.具体地,用户会先设计好对目标接口进行测试的一个或多个测试用例,然后将测
试用例输入到机器终端中,机器终端接收到测试用例后将依次通过各测试用例对目标接口进行测试。
75.需要说明的是,机器终端中设置有预设触发器,当用户向机器终端输入测试用例后,可通过预设触发器触发机器终端对目标接口的测试操作。
76.步骤s102,对于每一测试用例,执行测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息。
77.其中,错误信息是由机器终端经过对接口的测试输出的不可被人直接识别的信息,即用户查看到错误信息后也无法直接了解相关错因。测试错误表示该步骤执行后得到的结果和预期结果不同或该步骤无法完整地正常执行。
78.具体地,机器终端会在目标接口上执行测试用例中包含的所有预设步骤,当执行过程中任一预设步骤发生了测试错误,则输出与该预设步骤相关的错误信息,并结束测试。
79.步骤s103,根据任一预设步骤确定对应的预设错误因素库,并根据预设错误因素库和错误信息获取错误因素,预设错误因素库包括不同错误信息对应的错误因素。
80.其中,预设错误因素库可分为http(hypertext transfer protocol,超文本传输协议)状态码错误因素库和预设关键词匹配错误因素库两种,每种预设错误因素库中存储有错误因素和错误信息的对应关系。错误因素是机器终端最终输出的用户可直接识别的信息,即用户看到错误因素后可直接了解相关错因。
81.具体地,机器终端会根据不同的预设步骤确定分别确定对应的预设错误因素库,然后根据输出的错误信息和预设错误因素库中各错误因素和错误信息的对应关系,确定出输出的错误信息对应的错误因素,最终向用户显示错误因素。
82.本技术提供的方案,使机器终端获取到的预设步骤的错误信息后,根据错误信息和预设错误因素库可直接确定出对应的错误因素,减少了人工分析的过程,提高了整个测试流程的效率,降低了成本。同时采用终端机器获取错误因素,使获取错误因素的标准较为统一,进而使得最终分析错误因素更加准确。
83.在本技术的一种可选实施例中,根据任一预设步骤确定对应的预设错误因素库,具体包括:
84.根据任一预设步骤对测试用例进行标记,得到标记结果;
85.根据标记结果确定对应的预设错误因素库。
86.其中,标记结果指示测试用例上存在的标记。
87.具体地,对于测试用例中不同的预设步骤,以及各预设步骤的测试结果,都会用相应的标记进行标记,标记过程主要是通过python decorators(装饰器)技术实现,然后当测试结束后,根据测试用例上存在的标记,选取对应的预设错误因素库进行错误因素的匹配。
88.在本技术的一种可选实施例中,根据任一预设步骤对测试用例进行标记,具体包括:
89.若任一预设步骤为非网络请求步骤,以第一类型标记对测试用例进行标记;
90.第一类型标记对应的预设错误因素库为预设关键字匹配错误因素库,根据预设错误因素库和错误信息获取错误因素,具体包括:
91.根据错误信息从预设关键字匹配错误因素库中获取错误因素。
92.其中,非网络请求步骤表示上述四种预设步骤中,除网络请求步骤以外的其他三
种预设步骤。第一类型标记是当执行非网络请求步骤时发生错误时,对测试用例采用的标记。
93.具体地,当机器终端在目标接口上执行测试用例的任一非网络请求步骤时,若执行过程中发生了错误,则以第一类型标记对测试用例进行标记,输出错误信息并结束测试。对于存在第一类型标记的测试用例,将根据输出的错误信息从预设关键字匹配错误因素库中获取对应的错误因素。
94.在本技术的一种可选实施例中,根据任一预设步骤对测试用例进行标记,具体包括:
95.若任一预设步骤为网络请求步骤,以第二类型标记对测试用例进行标记;
96.第二类型标记对应的预设错误因素库为预设http状态码错误因素库和预设关键词匹配错误因素库,根据预设错误因素库和错误信息获取错误因素,具体包括:
97.将错误信息与预设http状态码错误因素库中的错误因素进行匹配;
98.若从预设http状态码错误因素库中匹配到对应的错误因素,则将匹配到的错误因素作为错误信息对应的错误因素;若从预设http状态码错误因素库中未匹配到对应的错误因素,则根据错误信息从预设关键字匹配错误因素库中获取错误因素。
99.其中,第二类型标记是当执行网络请求步骤时发生错误时,对测试用例采用的标记。
100.具体地,当机器终端在目标接口上执行测试用例的任一网络请求步骤时,若执行过程中发生了错误,则以第二类型标记对测试用例进行标记,输出错误信息并结束测试。对于存在第二类型标记的测试用例,将根据输出的错误信息先从预设http状态码错误因素库中匹配对应的错误因素,若在预设http状态码错误因素库中匹配到了对应的错误因素,则直接将匹配到的错误因素作为此次输出的错误信息对应错误因素;若在预设http状态码错误因素库中没有匹配到对应的错误因素,则再从预设关键字匹配错误因素库中获取对应的错误因素。
101.需要说明的是,在实际操作过程中,每一种预设步骤都会根据各自执行结果的成功或失败分别采用不同的标记进行标记。
102.如图2所示,机器终端开始启动测试过程时,若在启动过程中发生了错误,则以tag(标记)1对测试用例进行标记,并结束测试,若未发生错误则执行数据准备步骤;若在数据准备步骤发生错误,则以tag2对测试用例进行标记,并结束测试,若在数据准备步骤未发生错误,则以tag3对测试用例进行标记,并执行网络请求步骤;若在网络请求步骤发生错误,则以tag4对测试用例进行标记,并结束测试,若在网络请求步骤未发生错误,则以tag5对测试用例进行标记,并执行结果校验步骤;若在结果校验步骤发生错误,则以tag6对测试用例进行标记,并结束测试,若在结果校验步骤未发生错误,则以tag7对测试用例进行标记,并执行数据恢复步骤;若在数据恢复步骤发生错误,则以tag8对测试用例进行标记,并结果测试,若在数据恢复步骤未发生错误,则以tag9对测试用例进行标记,并结束测试。
103.在上述过程中,tag1、tag2、tag6、tag8都属于第一类型标记,tag4属于第二类型标记,而tag3、tag5、tag7、tag9属于测试结果为正确的标记,对应的执行步骤不存在错误信息,因此不会在后续的错误因素分析过程中用到。
104.在本技术的一种可选实施例中,预设http状态码错误因素库中存储有不同http状
态码对应的错误因素;
105.将错误信息与预设http状态码错误因素库中的错误因素进行匹配,具体包括:
106.获取错误信息中包含的http状态码,并将预设http状态码错误因素库中http状态码对应的错误因素,作为错误信息对应的错误因素。
107.其中,http状态码是表示网络请求步骤中发生的错误的标识。
108.具体地,网络请求步骤发生错误时输出的错误信息中会包含相应的状态码,机器终端会先获取其中包含的状态码,并从预设http状态码错误因素库中寻找该状态码以及对应的错误因素,然后将找到的错误因素作为输出的错误信息对应的错误因素。
109.具体来说,预设http状态码错误因素库中,开头为4的状态码对应的错误因素为用例问题,开头为5的状态码对应的错误因素为代码异常问题,其中,504状态码对应的问题为环境问题。包含其他异常状态码的错误信息则需要通过预设关键字匹配错误因素库进行匹配。
110.举例来说,当某次测试过程中,网络请求步骤出现了错误,输出的错误信息中包含有状态码404,而在预设http状态码错误因素库中,404状态码对应的错误因素为“用例问题”,那么将“用例问题”作为此次输出的错误信息对应的错误因素。
111.在本技术的一种可选实施例中,预设关键字匹配错误因素库中存储有不同预设关键字对应的错误因素;
112.根据错误信息从预设关键字匹配错误因素库中获取错误因素,包括:
113.获取错误信息中包含的预设关键字,并将预设错误因素库中预设关键字对应的错误因素,作为错误信息对应的错误因素。
114.其中,预设关键字为输出的错误信息中一定长度的字段。
115.具体地,非网络请求步骤或网络请求步骤发生错误时输出的错误信息中会包含相应的预设关键字,机器终端会先获取其中包含的预设关键字字段,并从预设关键字匹配错误因素库中寻找该预设关键字字段以及对应的错误因素,然后将找到的错误因素作为输出的错误信息对应的错误因素。
116.如图3所示,机器终端通过tag标记模块对测试用例上的标记进行检测,若检测到存在tag1标记,则获取到环境问题相关错误信息,然后进行预设关键字匹配并获取相应的错误因素;若不存在tag1标记,则检测是否存在tag2标记,若存在tag2标记则获取到case(一种自动化方法)问题相关错误信息,并进行预设关键字匹配并获取相应的错误因素;若不存在tag2标记,则检测是否存在tag4标记,若存在tag4标记则获取到网络问题相关错误信息,先进行http状态码匹配,若状态码为4开头则说明是用例问题,若状态码为5开头则说明是代码异常问题,若为其他状态码,则进行预设关键字匹配并获取相应的错误因素;若不存在tag4标记,则检测是否存在tag6标记,若存在tag6标记,则直接进行预设关键字匹配并获取相应的错误因素;若不存在tag6标记,则检测是否存在tag8标记,若存在tag8标记则获取到case问题相关错误信息,并进行预设关键字匹配并获取相应的错误因素。
117.在本技术的一种可选实施例中,该方法具体还可以包括:
118.在根据预设错误因素库和错误信息获取错误因素之后,将测试用例的标识、错误信息以及错误因素一一对应存储至预设数据库中;
119.对于任一测试用例,执行任一测试用例中的至少一个预设步骤,若任一预设步骤
发生测试错误,则获取对应的错误信息,若获取到的错误信息和任一测试用例的标识在预设数据库中有对应存储,则从预设数据库中获取任一测试用例的标识和错误信息对应的错误因素。
120.具体地,每次机器终端在目标接口上执行测试用例的预设步骤时,会获取因执行过程中发生错误的预设步骤而输出的错误信息和错误因素,并将该测试用例的标识、错误信息以及错误因素设置对应关系后存储在预设数据库中。当机器终端在任一接口上执行任一测试用例的预设步骤时,若发生的测试错误对应的输出的错误信息和该任一测试用例的标识在预设数据库中有对应关系的存储,那么可以直接从预设数据库中读取对应的错误因素。
121.举例来说,机器终端通过测试用例a在目标接口上执行预设步骤x时,出现了错误信息y,并根据错误信息y和预设错误因素库获取到了对应的错误因素z,此时机器终端会将测试用例a的标识a、错误信息y以及错误因素z以对应关系存储至预设数据库中。当测试用例a在其他接口上执行预设步骤x时,再次出现了错误信息y,此时机器终端获取到在预设数据库中测试用例a的标识a和错误信息y以对应关系在预设数据库中有存储,此时将不通过预设错误因素库进行匹配而直接从预设数据库中获取测试用例a的标识a和错误信息y对应的错误因素z。
122.如图4所示,通过预设触发器触发机器终端对目标接口的测试操作后,机器终端会对各预设步骤进行标记,对于执行过程中发生测试错误的预设步骤,会获取对应的错误信息和对应的错误因素,然后将错误信息以及错误因素存储在预设数据库中。
123.图5为本技术实施例提供的一种接口测试中的错误归因装置的结构框图,如图5所示,该接口测试中的错误归因装置500可以包括:测试用例接收模块501、错误信息获取模块502以及错误因素获取模块503,其中,
124.测试用例接收模块501用于接收用户针对目标接口输入的至少一个测试用例;其中,测试用例中包含至少一个预设步骤;
125.错误信息获取模块502用于执行测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;
126.错误因素获取模块503用于根据任一预设步骤确定对应的预设错误因素库,并根据预设错误因素库和错误信息获取错误因素,预设错误因素库包括不同错误信息对应的错误因素。
127.本技术提供的方案,使机器终端获取到的预设步骤的错误信息后,根据错误信息和预设错误因素库可直接确定出对应的错误因素,减少了人工分析的过程,提高了整个测试流程的效率,降低了成本。同时采用终端机器获取错误因素,使获取错误因素的标准较为统一,进而使得最终分析错误因素更加准确。
128.在本技术的一种可选实施例中,错误信息获取模块具体用于:
129.根据任一预设步骤对测试用例进行标记,得到标记结果;
130.根据标记结果确定对应的预设错误因素库。
131.在本技术的一种可选实施例中,错误信息获取模块进一步用于:
132.若任一预设步骤为非网络请求步骤,以第一类型标记对测试用例进行标记;
133.错误因素获取模块具体用于:
134.根据错误信息从预设关键字匹配错误因素库中获取错误因素。
135.在本技术的一种可选实施例中,错误信息获取模块具体用于:
136.若任一预设步骤为网络请求步骤,以第二类型标记对测试用例进行标记;
137.错误因素获取模块具体用于:
138.将错误信息与预设http状态码错误因素库中的错误因素进行匹配;
139.若从预设http状态码错误因素库中匹配到对应的错误因素,则将匹配到的错误因素作为错误信息对应的错误因素;若从预设http状态码错误因素库中未匹配到对应的错误因素,则根据错误信息从预设关键字匹配错误因素库中获取错误因素。
140.在本技术的一种可选实施例中,错误因素获取模块进一步用于:
141.获取错误信息中包含的http状态码,并将预设http状态码错误因素库中http状态码对应的错误因素,作为错误信息对应的错误因素。
142.在本技术的一种可选实施例中,错误因素获取模块进一步用于:
143.根据错误信息从预设关键字匹配错误因素库中获取错误因素,包括:
144.获取错误信息中包含的预设关键字,并将预设错误因素库中预设关键字对应的错误因素,作为错误信息对应的错误因素。
145.在本技术的一种可选实施例中,错误因素获取模块还可以用于:
146.在根据预设错误因素库和错误信息获取错误因素之后,将测试用例的标识、错误信息以及错误因素一一对应存储至预设数据库中;
147.对于任一测试用例,执行任一测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息,若获取到的错误信息和任一测试用例的标识在预设数据库中有对应存储,则从预设数据库中获取任一测试用例的标识和错误信息对应的错误因素。
148.下面参考图6,其示出了适于用来实现本技术实施例的电子设备(例如执行图1所示方法的终端设备或服务器)600的结构示意图。本技术实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)、可穿戴设备等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
149.电子设备包括:存储器以及处理器,存储器用于存储执行上述各个方法实施例所述方法的程序;处理器被配置为执行存储器中存储的程序。其中,这里的处理器可以称为下文所述的处理装置601,存储器可以包括下文中的只读存储器(rom)602、随机访问存储器(ram)603以及存储装置608中的至少一项,具体如下所示:
150.如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(rom)602中的程序或者从存储装置608加载到随机访问存储器(ram)603中的程序而执行各种适当的动作和处理。在ram603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、rom 602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。
151.通常,以下装置可以连接至i/o接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(lcd)、扬声器、振
动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
152.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从rom 602被安装。在该计算机程序被处理装置601执行时,执行本技术实施例的方法中限定的上述功能。
153.需要说明的是,本技术上述的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本技术中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
154.在一些实施方式中,客户端、服务器可以利用诸如http(hypertext transfer protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“lan”),广域网(“wan”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
155.上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
156.上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
157.接收用户针对目标接口输入的至少一个测试用例;其中,测试用例中包含至少一个预设步骤;对于每一测试用例,执行测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;根据任一预设步骤确定对应的预设错误因素库,并根据预设错误因素库和错误信息获取错误因素,预设错误因素库包括不同错误信息对应的错误因素。
158.可以以一种或多种程序设计语言或其组合来编写用于执行本技术的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如java、smalltalk、c++,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
159.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
160.描述于本技术实施例中所涉及到的模块或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,模块或单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一约束获取模块还可以被描述为“获取第一约束的模块”。
161.本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)等等。
162.在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
163.应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
164.以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人
员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

技术特征:
1.一种接口测试中的错误归因方法,其特征在于,包括:接收用户针对目标接口输入的至少一个测试用例;其中,所述测试用例中包含至少一个预设步骤;对于每一测试用例,执行所述测试用例中的所述至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;根据所述任一预设步骤确定对应的预设错误因素库,并根据所述预设错误因素库和所述错误信息获取错误因素,所述预设错误因素库包括不同错误信息对应的错误因素。2.根据权利要求1所述的方法,其特征在于,所述根据所述任一预设步骤确定对应的预设错误因素库,包括:根据所述任一预设步骤对所述测试用例进行标记,得到标记结果;根据所述标记结果确定对应的所述预设错误因素库。3.根据权利要求2中所述的方法,其特征在于,所述根据所述任一预设步骤对所述测试用例进行标记,包括:若所述任一预设步骤为非网络请求步骤,以第一类型标记对所述测试用例进行标记;所述第一类型标记对应的预设错误因素库为预设关键字匹配错误因素库,所述根据所述预设错误因素库和所述错误信息获取错误因素,包括:根据所述错误信息从预设关键字匹配错误因素库中获取所述错误因素。4.根据权利要求2中所述的方法,其特征在于,所述根据所述任一预设步骤对所述测试用例进行标记,包括:若所述任一预设步骤为网络请求步骤,以第二类型标记对所述测试用例进行标记;所述第二类型标记对应的预设错误因素库为预设超文本传输协议http状态码错误因素库和预设关键词匹配错误因素库,所述根据所述预设错误因素库和所述错误信息获取错误因素,包括:将所述错误信息与所述预设http状态码错误因素库中的错误因素进行匹配;若从所述预设http状态码错误因素库中匹配到对应的错误因素,则将匹配到的错误因素作为所述错误信息对应的错误因素;若从所述预设http状态码错误因素库中未匹配到对应的错误因素,则根据所述错误信息从所述预设关键字匹配错误因素库中获取所述错误因素。5.根据权利要求4中所述的方法,其特征在于,所述预设http状态码错误因素库中存储有不同http状态码对应的错误因素;所述将所述错误信息与所述预设http状态码错误因素库中的错误因素进行匹配,包括:获取所述错误信息中包含的http状态码,并将所述预设http状态码错误因素库中所述http状态码对应的错误因素,作为所述错误信息对应的错误因素。6.根据权利要求3或4中所述的方法,其特征在于,所述预设关键字匹配错误因素库中存储有不同预设关键字对应的错误因素;所述根据所述错误信息从所述预设关键字匹配错误因素库中获取所述错误因素,包括:获取所述错误信息中包含的所述预设关键字,并将所述预设错误因素库中所述预设关
键字对应的错误因素,作为所述错误信息对应的错误因素。7.根据权利要求1中所述的方法,其特征在于,所述方法还包括:在所述根据所述预设错误因素库和所述错误信息获取错误因素之后,将所述测试用例的标识、所述错误信息以及所述错误因素一一对应存储至预设数据库中;对于任一测试用例,执行所述任一测试用例中的所述至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息,若获取到的错误信息和所述任一测试用例的标识在所述预设数据库中有对应存储,则从所述预设数据库中获取所述任一测试用例的标识和所述错误信息对应的错误因素。8.一种接口测试中的错误归因装置,其特征在于,包括:测试用例接收模块,用于接收用户针对目标接口输入的至少一个测试用例;其中,所述测试用例中包含至少一个预设步骤;错误信息获取模块,用于对于每一测试用例,执行所述测试用例中的所述至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;错误因素获取模块,用于根据所述任一预设步骤确定对应的预设错误因素库,并根据所述预设错误因素库和所述错误信息获取错误因素,所述预设错误因素库包括不同错误信息对应的错误因素。9.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1-7中任一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7中任一项所述方法的步骤。

技术总结
本申请实施例提供了一种接口测试中的错误归因方法、装置、电子设备及存储介质,涉及计算机技术领域。该方法包括:接收用户针对目标接口输入的至少一个测试用例;对于每一测试用例,执行测试用例中的至少一个预设步骤,若任一预设步骤发生测试错误,则获取对应的错误信息;根据任一预设步骤确定对应的预设错误因素库,并根据预设错误因素库和错误信息获取错误因素。本申请的方案使机器终端获取到的预设步骤的错误信息后,根据错误信息和预设错误因素库可直接确定出对应的错误因素,减少了人工分析的过程,提高了整个测试流程的效率,降低了成本。同时采用终端机器获取错误因素,使获取错误因素的标准较为统一,进而使得最终分析错误因素更加准确。误因素更加准确。


技术研发人员:张磊 汪丽梅
受保护的技术使用者:北京淘友天下技术有限公司
技术研发日:2023.04.14
技术公布日:2023/7/21
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐