掌桥专利:专业的专利平台
掌桥专利
首页

接口测试方法、装置、终端设备及存储介质

文献发布时间:2024-04-18 20:02:18


接口测试方法、装置、终端设备及存储介质

技术领域

本申请属于计算机应用技术领域,特别是涉及一种接口测试方法、装置、终端设备及计算机可读存储介质。

背景技术

随着对网通产品的质量要求越来越高,对产品接口的测试要求也变得越来越严格,已从简单的常温指标测试及可靠性挂载测试等变为长期可靠性测试,即对接口的各种信号指标进行不间断的长期测试。

相关技术中,利用测试仪器对各个接口的信号指标进行监控,从而对各个接口进行测试,但是测试仪器无法实现对各个接口信号指标的长期监控,需要人工长期的反复操作测试仪器,从而导致了测试效率低下,人力资源浪费的问题。

发明内容

本申请的目的在于提供一种接口测试方法、装置、终端设备及计算机可读存储介质,能够解决相关技术中,测试仪器无法实现对各个接口信号指标的长期监控测试,需要人工长期的反复操作测试仪器,从而导致的测试效率低下,人力资源浪费的问题。

第一方面,本申请实施例提供了一种接口测试方法,包括:获取待测接口对应的测试用例,其中,测试用例包括至少一个测试项;获取测试用例对应的测试配置数据,生成测试配置信息;根据测试配置信息生成循环控制指令;根据循环控制指令对待测接口进行自动化测试,其中,自动化测试包括至少一轮测试。

在第一方面的一种可能的实现方式中,上述获取测试用例对应的测试配置数据,生成测试配置信息,包括:

获取测试用例对应的各个窗口的各个坐标;

获取测试用例对应的单轮测试时间;

获取测试用例对应的测试用例间隔时间;

获取待测接口对应的测试总时长;

根据单轮测试时间、测试用例间隔时间及测试总时长,确定测试循环次数;

根据测试用例、各个坐标、单轮测试时间、测试用例间隔时间及测试循环次数,生成测试配置信息。

可选的,在第一方面的另一种可能的实现方式中,上述循环控制指令包括窗口切换指令、鼠标控制指令及循环调用指令,上述根据循环控制指令对待测接口进行自动化测试,包括:

根据窗口切换指令控制各个窗口切换;

根据鼠标控制指令控制鼠标坐标及鼠标事件;

根据循环调用指令循环调用窗口切换指令及鼠标控制指令,对待测接口进行自动化测试。

可选的,在第一方面的再一种可能的实现方式中,上述根据循环控制指令对待测接口进行自动化测试,包括:

根据循环控制指令对待测接口进行第一轮测试;

若第一轮测试出现测试异常,则发出测试异常提醒;

若第一轮测试未出现异常,则根据循环控制指令对待测接口进行后续测试。

可选的,在第一方面的又一种可能的实现方式中,上述待测接口为话音接口,上述获取待测接口对应的测试用例之前,还包括:

将待测接口与其他话音接口互拨,判断待测接口是否注册成功。

可选的,在第一方面的另一种可能的实现方式中,上述各轮测试分别对应一个测试编号,上述根据循环控制指令对待测接口进行自动化测试之后,还包括:

生成各轮测试对应的各个测试项的各个初始测试报告,其中,各个初始测试报告根据对应的测试项及测试编号命名;

根据各个初始测试报告,自动生成待测接口的测试报告。

可选的,在第一方面的再一种可能的实现方式中,上述根据各个初始测试报告,自动生成待测接口的测试报告,包括:

从各个初始测试报告中提取与各个测试项及测试编号对应的测试数据及图片;

根据各个测试项及测试编号将测试数据及图片输入对应的预设表格;

将测试数据及图片与预设表格中预设标准数据对比,自动生成待测接口的测试报告。

第二方面,本申请还提供了一种接口测试装置,包括:第一获取模块,用于获取待测接口对应的测试用例,其中,测试用例包括至少一个测试项;第二获取模块,用于获取测试用例对应的测试配置数据,生成测试配置信息;第一生成模块,用于根据测试配置信息生成循环控制指令;测试模块,用于根据循环控制指令对待测接口进行自动化测试,其中,自动化测试包括至少一轮测试。

在第二方面的一种可能的实现方式中,上述第二获取模块,包括:

第一获取单元,用于获取测试用例对应的各个窗口的各个坐标;

第二获取单元,用于获取测试用例对应的单轮测试时间;

第三获取单元,用于获取测试用例对应的测试用例间隔时间;

第四获取单元,用于获取待测接口对应的测试总时长;

第一确定单元,用于根据单轮测试时间、测试用例间隔时间及测试总时长,确定测试循环次数;

第一生成单元,用于根据测试用例、各个坐标、单轮测试时间、测试用例间隔时间及测试循环次数,生成测试配置信息。

可选的,在第二方面的另一种可能的实现方式中,上述循环控制指令包括窗口切换指令、鼠标控制指令及循环调用指令;相应的,上述测试模块,包括:

第一控制单元,用于根据窗口切换指令控制各个窗口切换;

第二控制单元,用于根据鼠标控制指令控制鼠标坐标及鼠标事件;

第一测试单元,用于根据循环调用指令循环调用窗口切换指令及鼠标控制指令,对待测接口进行自动化测试。

可选的,在第二方面的再一种可能的实现方式中,上述测试模块,包括:

第二测试单元,用于根据循环控制指令对待测接口进行第一轮测试;

异常判断单元,用于若第一轮测试出现测试异常,则发出测试异常提醒;

第三测试单元,用于若第一轮测试未出现异常,则根据循环控制指令对待测接口进行后续测试。

可选的,在第二方面的又一种可能的实现方式中,上述待测接口为话音接口;相应的,上述接口测试装置,还包括:

判断模块,用于将待测接口与其他话音接口互拨,判断待测接口是否注册成功。

可选的,在第二方面的另一种可能的实现方式中,上述各轮测试分别对应一个测试编号;相应的,上述接口测试装置,还包括:

第二生成模块,用于生成各轮测试对应的各个测试项的各个初始测试报告,其中,各个初始测试报告根据对应的测试项及测试编号命名;

第三生成模块,用于根据各个初始测试报告,自动生成待测接口的测试报告。

可选的,在第二方面的再一种可能的实现方式中,上述第三生成模块,包括:

提取单元,用于从各个初始测试报告中提取与各个测试项及测试编号对应的测试数据及图片;

输入单元,用于根据各个测试项及测试编号将测试数据及图片输入对应的预设表格;

第二生成单元,用于将测试数据及图片与预设表格中预设标准数据对比,自动生成待测接口的测试报告。

第三方面,本申请还提供了一种终端设备。该终端设备包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序。处理器执行计算机程序时实现上述第一方面任意一种实现方式的方法。

第四方面,本申请还提供了一种计算机可读存储介质。计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述第一方面任意一种实现方式的方法。

第五方面,本申请还提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第一方面任意一种实现方式的方法。

本申请实施例与现有技术相比存在的有益效果是:通过根据待测接口对应的相关测试配置数据生成循环控制指令,利用循环控制指令对待测接口进行自动化测试,提高了测试效率,节约了人力成本。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一实施例提供的接口测试方法的流程示意图;

图2是本申请一实施例提供的测试环境拓扑图;

图3是本申请一实施例提供的另一测试环境拓扑图;

图4是本申请另一实施例提供的接口测试方法的流程示意图;

图5是本申请实施例提供的接口测试装置的结构示意图;

图6是本申请实施例提供的终端设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。

另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。

下面参考附图对本申请提供的接口测试方法、装置、终端设备、存储介质及计算机程序进行详细描述。

图1示出了本申请实施例提供的一种接口测试方法的流程示意图。

如图1所示,该接口测试方法,包括以下步骤:

步骤101,获取待测接口对应的测试用例。

需要说明的是,本申请实施例的接口测试方法可以由本申请实施例的接口测试装置执行。本申请实施例的接口测试装置可以配置在任意终端设备中,以执行本申请实施例的接口测试方法。

其中,测试用例可以包括至少一个测试项。

作为本申请一种可能的实现方式,待测接口可以是即将需要被自动化测试的接口,可以是网通产品上的接口,如外部交换站(foreign exchange station,FXS)接口等,当待测接口需要被测试(例如长期气候可靠性测试等)时,可以获取待测接口对应的测试用例,也可以获取测试用例编号,以确定待测接口对应的测试用例,测试用例可以包括一个或多个测试项,例如,当待测接口为FXS接口时,待测用例可以包括增益随频率的变化、接口相对电平及增益随电平的变化等测试项,自动化测试可以对测试用例进行一轮或多的重复测试。

需要说明的是,上述列举的待测接口及测试用例包括的测试项,仅为示例性的,实际使用时,可以根据实际需求及具体应用场景确定待测接口及测试用例,本申请实施例对此不作限定。

进一步的,当待测接口为话音接口时,还需要判断待测的话音接口是否注册成功,以提高接口测试的可靠性。即在本申请实施例一种可能的实现方式中,上述待测接口为话音接口,上述步骤101之前,还可以包括:

将待测接口与其他话音接口互拨,判断待测接口是否注册成功。

作为一种可能的实现方式,当待测接口为话音接口(如FXS接口)时,若话音接口对应的待测产品(待测接口为待测产品上的一个接口)为双语音接口,则可以按照图2所示,搭建测试环境,可以将待测产品上的两个话音接口(其中一个为待测接口)与测试仪器连接,测试仪器可以是TCA8200仪器等,待测产品通过网线与测试仪器连接,若话音接口对应的待测产品为单语音接口,则可以按照图3所示,搭建测试环境,陪测产品可以是与待测产品相同的产品,可以将待测产品上的待测接口及陪测产品上的话音接口分别与测试仪器连接,待测产品与陪测产品及测试仪器通过网线连接。利用两个话音接口互拨电话,若可以通话表示待测接口注册成功,可以进行测试,若不可通话,说明待测接口可能未注册成功,可以使用注册软件(如OnDo SIP Server软件)进行注册,注册成功后再进行测试。

步骤102,获取测试用例对应的测试配置数据,生成测试配置信息。

作为一种可能的实现方式,可以获取测试用例对应的测试配置数据,测试配置数据可以是测试一轮测试用例需要的时间及每轮测试用例之间的间隔时间等,根据获取的测试配置数据,生成测试配置信息。

举例说明,假设待测接口为FXS接口,获取的测试配置信息为测试一轮测试用例需要2分钟,每轮测试用例之间的间隔时间为10秒,则可以生成测试配置信息:“待测接口:FXS接口,单轮测试时常:2分钟,间隔时间:10秒”。

进一步的,为了使自动化测试更准确,可以获取多种与测试用例相关的数据,以生成更详细的测试配置信息,从而增加接口测试的可靠性。即在本申请实施例一种可能的实现方式中,上述步骤102,可以包括:

获取测试用例对应的各个窗口的各个坐标;

获取测试用例对应的单轮测试时间;

获取测试用例对应的测试用例间隔时间;

获取待测接口对应的测试总时长;

根据单轮测试时间、测试用例间隔时间及测试总时长,确定循环次数;

根据测试用例、各个坐标、单轮测试时间、测试用例间隔时间及测试循环次数,生成测试配置信息。

作为一种可能的实现方式,在用户界面上,测试用例可以对应多个窗口,例如测试用例中的每个测试项对应一个窗口,可以获取每个窗口或者窗口中的某个按钮在用户界面的坐标,可以是相对于整个显示屏幕的距离,例如相对于显示屏幕上方及左侧的距离、相对于显示屏幕上方及右侧的距离、相对于显示屏幕下方及左侧的距离或相对于显示屏幕下方及右侧的距离等。

作为示例,假设根据窗口或窗口中的按钮相对于显示屏幕上方及左侧的距离生成窗口的坐标,测试用例对应的其中一个窗口或窗口按钮与显示屏幕上方的距离为50像素,与显示屏幕的左侧距离为200像素,则可以得到该窗口的坐标为(50px,200px)。

作为一种可能的实现方式,可以获取测试用例对应的单轮测试时间,即测试用例进行一轮测试需要的时间,可以将测试用例预先测试一轮并计时,以获取单轮测试时间。

作为本申请一种可能的实现方式,可以根据用户的配置,获取测试用例对应的测试用例间隔时常,即上一轮测试用例测试结束到下一轮测试用例测试开始之间间隔的时常。

作为本申请一种可能的实现方式,可以获取待测接口对应的测试总时长,即需要对待测接口进行监测的总时长,在测试总时长内,可以对待测接口对应的测试用例进行多次重复的测试。

作为一种可能的实现方式,可以根据单轮测试时间、测试用例间隔时间及测试总时长确定测试循环次数,即在测试总时长内,对测试用例进行重复测试的次数,可以用测试总时长除以单轮测试时间及测试用例间隔时间的和得到商作为测试循环次数(即测试循环次数=测试总时长÷(单轮测试时间+测试用例间隔时间)),若有余数,则可以根据需求选择将得到的商加一后作为测试循环次数或者直接将得到的商作为测试循环次数。

举例说明,若测试总时长为24小时(1440分钟),单轮测试时间为10分钟,测试用例间隔时间为30秒(0.5分钟),则可以根据1440÷(10+0.5)等于137余1.5,得到相应的测试循环次数为137或138次。

作为一种可能的实现方式,可以将测试用例及对应的各个坐标、单轮测试时间、测试用例间隔时间及测试循环次数组合,生成测试配置信息。

举例说明,假设待测接口为FXS接口,测试用例包含的测试项为增益随频率的变化、接口相对电平及增益随电平的变化,各个测试项对应的窗口的坐标分别为(40px,200px)、(45px,200px)及(50px,205px),其他测试配置数据同上例,则可以生成测试配置信息为“待测接口:FXS接口,测试项:增益随频率的变化、接口相对电平、增益随电平的变化,坐标:(40px,200px)、(45px,200px)、(50px,205px),单轮测试时间:10分钟,测试用例间隔时间:0.5分钟,测试循环次数:137次”。

步骤103,根据测试配置信息生成循环控制指令。

作为一种可能的实现方式,可以根据待测接口对应的测试配置信息生成循环控制指令,例如,根据测试用例包括的测试项等信息生成循环控制指令中用于切换各个测试项对应的窗口的指令,可以根据单轮测试时间及测试用例间隔等生成循环控制指令中用于控制鼠标移动及点击的指令等,可以根据测试循环次数等生成循环控制指令中的循环调用指令,用于循环调用控制窗口切换指令及控制鼠标移动指令。

需要说明的是,上述列举的各个根据循环控制指令生成循环控制指令的方法,仅为示例性的,实际使用时,可以根据实际需求及具体的应用场景生成具体的循环控制指令,本申请实施例对此不作限定。

步骤104,根据循环控制指令对待测接口进行自动化测试,其中,自动化测试包括至少一轮测试。

作为一种可能的实现方式,可以通过循环控制指令控制窗口的切换及鼠标的移动、点击触发等事件,实现对待测接口的自动化测试,自动化测试中可以包括至少一轮测试,具体可以根据测试循环次数确定,即循环控制指令还可以根据测试循环次数循环重复地控制窗口的切换及鼠标的移动、点击触发等事件,以实现对待测接口的至少一轮的测试。

进一步的,循环控制指令中包括多种指令。即本申请实施例一种可能的实现方式中,上述循环控制指令包括窗口切换指令、鼠标控制指令及循环调用指令,上述步骤104,可以包括:

根据所述窗口切换指令控制各个所述窗口切换;

根据所述鼠标控制指令控制鼠标坐标及鼠标事件;

根据所述循环调用指令循环调用所述窗口切换指令及所述鼠标控制指令,对所述待测接口进行所述自动化测试。

作为本申请一种可能的实现方式,可以根据窗口切换指令对测试用例对应的各个窗口进行切换,以确保需要被鼠标操作的窗口始终处于用户显示界面的最上方。可以根据鼠标控制指令控制鼠标的坐标,即根据各个窗口的各个坐标,使鼠标移动到相应的窗口位置或窗口中按钮的位置,鼠标控制指令还可以控制鼠标事件,如单击、双击事件等,因此,鼠标控制指令可以控制鼠标移动到相应的窗口或窗口按钮的位置后,对相应的位置进行点击或双击等鼠标事件,实现测试用例的一次测试。循环调用指令可以重复多次循环调用窗口切换指令及鼠标控制指令,可以根据测试循环次数,预先在循环调用指令中设置好循环调用的次数,实现对待测接口的自动化测试。

进一步的,为了进一步提高接口测试的可靠性,还可以对测试环境进行检测。即在本申请实施例一种可能的实现方式中,上述步骤104,还可以包括:

根据循环控制指令对待测接口进行第一轮测试;

若第一轮测试出现测试异常,则发出测试异常提醒;

若第一轮测试未出现异常,则根据循环控制指令对待测接口进行后续测试。

作为一种可能的实现方式,可以首先根据循环控制指令对待测接口进行第一轮测试,若在第一轮测试过程中,出现测试异常的情况,如测试环境异常、测试配置信息不充分或循环控制指令错误等情况,则可以暂停测试,并发出测试异常提醒,如可以在用户界面弹出异常警告框,发出异常警报声提醒等,以提示用户对异常情况进行处理。若第一轮测试未出现异常,则可以根据循环控制指令对待测接口进行后续剩余的测试,直到达到测试循环次数,剩余的测试过程中若出现异常,可以不暂停测试,只将该轮的测试结果标记为失败。

本申请实施例提供的报表测试方法,通过根据待测接口对应的相关测试配置数据生成循环控制指令,利用循环控制指令对待测接口进行自动化测试,提高了测试效率,节约了人力成本,并且还可以在自动化测试过程中检测是否存在测试异常情况,提高了测试的可靠性。

在本申请一种可能的实现方式中,由于长期的监测测试后会产生大量的测试数据或产生大量的测试报告,因此,还涉及到对大量的测试数据或测试报告进行整理的问题,为了快速的对测试数据或测试报告进行整理,并节约人工整理的成本,避免人工填写数据出错,还可以对测试后产生的数据或报告进行自动化整理,自动根据大量的数据或报告生成待测接口最终的测试结果,以进一步提高接口测试的效率及可靠性,进一步节约人力成本。

下面结合图4,对本申请实施例提供的接口测试方法进行进一步说明。

图4示出了本申请实施例提供的另一种接口测试方法的流程示意图。

如图4所示,该接口测试方法,包括以下步骤:

步骤401,获取待测接口对应的测试用例。

步骤402,获取测试用例对应的测试配置数据,生成测试配置信息。

步骤403,根据测试配置信息生成循环控制指令。

步骤404,根据循环控制指令对待测接口进行自动化测试,其中,自动化测试包括至少一轮测试。

上述步骤401-404的具体实现过程及原理,可以参照上述实施例的详细描述,此次不再赘述。

步骤405,生成各轮测试对应的各个测试项的各个初始测试报告。

其中,各轮测试可以分别对应一个测试编号,可以将当前测试对应的轮数作为当前测试对应的测试编号,测试编号可以随着测试的次数递增。

其中,各个初始测试报告可以根据对应的测试项及测试编号命名。

作为一种可能的实现方式,可以根据用户对报告保存路径的配置操作,生成初始报告保存路径,对待测接口每进行一轮测试后,可以生成该轮测试对应的初始测试报告,可以是每个测试项各对应一份初始测试报告,初始测试报告可以自动根据初始报告保存路径进行存储,并且可以自动根据该轮测试对应的测试编号及测试项名称对初始测试报告进行命名。

作为示例,待测接口对应的测试项为增益随频率的变化、接口相对电平及增益随电平的变化,假设当前生成的为第5轮测试对应的初始测试报告,测试编号可以为5,生成测试项对应的3份初始测试报告可以分别命名为“增益随频率的变化(5)--测试报告”、“接口相对电平(5)--测试报告”及“增益随电平的变化(5)--测试报告”。

步骤406,根据各个初始测试报告,自动生成待测接口的测试报告。

作为一种可能的实现方式,可以将各个初始测试报告中的测试数据汇总,对汇总的测试数据进行分析,得到待测接口的测试结果,测试结果可以包括通过及失败,根据汇总的测试数据及测试结果可以生成测试报告,还可以生成每份初始测试报告对应的初始测试结果,再将所有初始测试结果汇总,确定待测接口最终的测试结果,并生成测试报告。测试报告可以根据用户预先配置的测试报告存放路径,自动保存至测试报告存放路径中。

进一步的,为了使分析结果更准确,可以对各个初始测试报告中的测试数据按照规则分类提取后再进行分析,以进一步提升接口测试的可靠性。即在本申请实施例一种可能的实现方式中,上述步骤406,可以包括:

从各个初始测试报告中提取与各个测试项及测试编号对应的测试数据及图片;

根据各个测试项及测试编号将测试数据及图片输入对应的预设表格;

将测试数据及图片与预设表格中预设标准数据对比,自动生成待测接口的测试报告。

作为本申请一种可能的实现方式,可以将初始测试报告中的测试数据及图片提取出来,图片放入按测试项名称及测试编号命名的文件夹中,并将文件夹压缩,生成各个压缩后的图片文件,可以将提取的测试数据及压缩后的图片文件根据测试项及测试编号输入预设表格中,不同测试项的测试数据及压缩后的图片文件对应预设表格中的不同页,相同测试项的测试数据及压缩后的图片文件可以输入至预设表格的同一页中,并按照测试编号的顺序输入,还可以将每份初始测试报告的生成时间提取出来(若生成时间为12小时制可以转化为24小时制),再根据生成时间的先后顺序将对应的测试数据及压缩后的图片文件输入预设表格中。

作为本申请一种可能的实现方式,还可以将每个测试项对应的第一份初始测试报告中的图片输入预设表格中的预设位置(如压缩后的图片文件上方),以便于用户查看。

作为本申请一种可能的实现方式,可以将测试数据及压缩后的图片文件与预设表格中的预设标准数据对比,得到待测接口的测试结果(可以是通过或失败),再将测试结果显示在预设表格首页及所有测试数据最后,生成待测接口的测试报告,测试报告中可以包括预设表格中输入的所有测试数据、压缩后的图片文件以及测试结果。

本申请实施例提供的接口测试方法,通过根据待测接口对应的相关测试配置数据生成循环控制指令,利用循环控制指令对待测接口进行自动化测试,提高了测试效率及可靠性,节约了人力成本,并且还可以生成每轮测试对应的初始测试报告,通过将各个初始测试报告中的测试数据及图片提取后输入预设表格,从而自动生成待测接口的测试报告,进一步节约了人力成本,避免了人工处理数据可能会出现的错误,进一步提升了接口测试的可靠性。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

对应于上文实施例所述的接口测试方法,图5示出了本申请实施例提供的接口测试装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。

参照图5,该装置50包括:

第一获取模块51,用于获取待测接口对应的测试用例,其中,测试用例包括至少一个测试项;

第二获取模块52,用于获取测试用例对应的测试配置数据,生成测试配置信息;

第一生成模块53,用于根据测试配置信息生成循环控制指令;

测试模块54,用于根据循环控制指令对待测接口进行自动化测试,其中,自动化测试包括至少一轮测试。

在实际使用时,本申请实施例提供的接口测试装置,可以被配置在任意终端设备中,以执行前述接口测试方法。

本申请实施例提供的接口测试装置,通过根据待测接口对应的相关测试配置数据生成循环控制指令,利用循环控制指令对待测接口进行自动化测试,提高了测试效率,节约了人力成本。

在本申请一种可能的实现形式中,上述第二获取模块52,包括:

第一获取单元,用于获取测试用例对应的各个窗口的各个坐标;

第二获取单元,用于获取测试用例对应的单轮测试时间;

第三获取单元,用于获取测试用例对应的测试用例间隔时间;

第四获取单元,用于获取待测接口对应的测试总时长;

第一确定单元,用于根据单轮测试时间、测试用例间隔时间及测试总时长,确定测试循环次数;

第一生成单元,用于根据测试用例、各个坐标、单轮测试时间、测试用例间隔时间及测试循环次数,生成测试配置信息。

进一步的,在本申请另一种可能的实现形式中,上述循环控制指令包括窗口切换指令、鼠标控制指令及循环调用指令;相应的,上述测试模块,包括:

第一控制单元,用于根据窗口切换指令控制各个窗口切换;

第二控制单元,用于根据鼠标控制指令控制鼠标坐标及鼠标事件;

第一测试单元,用于根据循环调用指令循环调用窗口切换指令及鼠标控制指令,对待测接口进行自动化测试。

在本申请再一种可能的实现形式中,上述测试模块54,包括:

第二测试单元,用于根据循环控制指令对待测接口进行第一轮测试;

异常判断单元,用于若第一轮测试出现测试异常,则发出测试异常提醒;

第三测试单元,用于若第一轮测试未出现异常,则根据循环控制指令对待测接口进行后续测试。

进一步的,在本申请又一种可能的实现形式中,上述待测接口为话音接口;相应的,上述接口测试装置50,还包括:

判断模块,用于将待测接口与其他话音接口互拨,判断待测接口是否注册成功。

进一步的,在本申请另一种可能的实现形式中,上述各轮测试分别对应一个测试编号;相应的,上述接口测试装置50,还包括:

第二生成模块,用于生成各轮测试对应的各个测试项的各个初始测试报告,其中,各个初始测试报告根据对应的测试项及测试编号命名;

第三生成模块,用于根据各个初始测试报告,自动生成待测接口的测试报告。

进一步的,在本申请再一种可能的实现形式中,上述第三生成模块,包括:

提取单元,用于从各个初始测试报告中提取与各个测试项及测试编号对应的测试数据及图片;

输入单元,用于根据各个测试项及测试编号将测试数据及图片输入对应的预设表格;

第二生成单元,用于将测试数据及图片与预设表格中预设标准数据对比,自动生成待测接口的测试报告。

需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

为了实现上述实施例,本申请还提出一种终端设备。

图6为本申请一个实施例的终端设备的结构示意图。

如图6所示,上述终端设备200包括:

存储器210及至少一个处理器220,连接不同组件(包括存储器210和处理器220)的总线230,存储器210存储有计算机程序,当处理器220执行所述程序时实现本申请实施例所述的接口测试方法。

总线230表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。

终端设备200典型地包括多种电子设备可读介质。这些介质可以是任何能够被终端设备200访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

存储器210还可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)240和/或高速缓存存储器250。终端设备200可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统260可以用于读写不可移动的、非易失性磁介质(图6未显示,通常称为“硬盘驱动器”)。尽管图6中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线230相连。存储器210可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本申请各实施例的功能。

具有一组(至少一个)程序模块270的程序/实用工具280,可以存储在例如存储器210中,这样的程序模块270包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块270通常执行本申请所描述的实施例中的功能和/或方法。

终端设备200也可以与一个或多个外部设备290(例如键盘、指向设备、显示器291等)通信,还可与一个或者多个使得用户能与该终端设备200交互的设备通信,和/或与使得该终端设备200能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口292进行。并且,终端设备200还可以通过网络适配器293与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器293通过总线230与终端设备200的其它模块通信。应当明白,尽管图中未示出,可以结合终端设备200使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。

处理器220通过运行存储在存储器210中的程序,从而执行各种功能应用以及数据处理。

需要说明的是,本实施例的终端设备的实施过程和技术原理参见前述对本申请实施例的接口测试方法的解释说明,此处不再赘述。

本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。

本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

技术分类

06120116581364