接口测试方法、装置、移动终端及存储介质与流程

文档序号:14910996发布日期:2018-07-10 23:24阅读:126来源:国知局

本发明涉及测试技术领域,特别涉及一种接口测试方法、装置、移动终端及存储介质。



背景技术:

随着时代的发展人们生活水平的不断提高,物联网产品越来越多的走进我们的生活,智能电子设备已成为我们生活的一部分,在智能电子设备的生产和使用过程中,为了保障其功能的稳定性,需要对智能电子设备上的接口进行周期性的测试,以及时进行维修和保养,以保障智能电子设备的正常使用。

现有的接口测试方法采用的方式是python/java语言加对应的单元测试框架加数据驱动的方式进行测试。

现有的接口测试方法中数据的编辑操作等都没有一个可视化的过程,都是以数据驱动,即所有的操作都是在一个文本或者数据库里面进行编辑,并且当接口测试流程完成后只会简单显示被测试接口是否测试合格,其测试过程中测试项成功或失败等数量信息均不会进行显示,导致用户体验较低。



技术实现要素:

基于此,本发明实施例的目的在于提供一种能实时进行测试数据显示的接口测试方法、装置、移动终端及存储介质。

第一方面,本发明提供了一种接口测试方法,所述方法包括:

接收接口测试指令,根据所述接口测试指令内的调试信息,在测试用例数据库中获取目标测试用例并构建测试脚本;

在所述测试脚本上运行所述目标测试用例,并实时获取测试日志;

根据获取到的所述测试日志实时进行测试数据显示,当所述测试脚本完成运行时,停止所述测试日志的获取,并根据最后一次获取到的所述测试日志生成并显示测试结果。

上述接口测试方法,通过采用实时获取所述测试日志以进行实时所述测试数据显示方式,使得拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,且通过根据最后一次获取到的所述测试日志生成并显示测试结果的设计,使得最终显示的测试结果内容丰富,提高了用户的体验。

进一步地,所述在测试用例数据库中获取目标测试用例并构建测试脚本的步骤包括:

获取所述调试信息中的标识,并将所述标识与所述测试用例数据库进行匹配;

当所述标识与所述测试用例数据库匹配成功时,获取匹配到的所述目标测试用例,并发出脚本构建信号;

根据所述脚本构建信号查询预设脚本,以构建所述测试脚本。

进一步地,所述将所述标识与所述测试用例数据库进行匹配的步骤之后,所述方法还包括:

当所述标识与所述测试用例数据库匹配未成功时,判断所述接口测试指令中是否存储有当前编写测试用例;

若是,则将所述当前编写测试用例设置为所述目标测试用例,并发出所述脚本构建信号;

若否,则发出测试失败提示。

进一步地,所述接收接口测试指令的步骤之前,所述方法还包括:

获取本地编写的接口测试用例,并根据预设存储规则将获取到的所述接口测试用例进行存储,以构建所述测试用例数据库。

进一步地,所述根据预设存储规则将获取到的所述接口测试用例进行存储的步骤包括:

分别获取每个所述接口测试用例中的请求头、请求体和预期结果,并采用多字段的方式形成对应关系进行存储。

进一步地,所述实时获取测试日志的步骤包括:

获取本地存储的预设时间,并以所述预设时间为间隔持续发送日志请求,以实时获取所述测试日志。

进一步地,所述根据最后一次获取到的所述测试日志生成并显示测试结果的步骤包括:

获取所述目标测试用例的用例名称和预期结果,并获取最后一次的所述测试日志中存储的耗时时间、测试项成功数量信息、测试项失败数量信息和测试项错误数量信息;

根据本地存储的显示规则,将所述用例名称、所述引起结果、所述耗时时间、所述测试项成功数量信息、所述测试项失败数量信息和所述测试项错误数量信息对应进行显示。

第二方面,本发明提供了一种接口测试装置,包括:

接收模块,用于接收接口测试指令;

测试模块,用于根据所述接口测试指令内的调试信息,在测试用例数据库中获取目标测试用例并构建测试脚本,并在所述测试脚本上运行所述目标测试用例,并实时获取测试日志;

显示模块,用于根据获取到的所述测试日志实时进行测试数据显示,当所述测试脚本完成运行时,停止所述测试日志的获取,并根据最后一次获取到的所述测试日志生成并显示测试结果。

上述接口测试装置,通过所述测试模块和所述显示模块实时获取所述测试日志以进行实时所述测试数据显示方式,使得所述接口测试装置拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,且通过所述显示模块根据最后一次获取到的所述测试日志生成并显示测试结果的设计,使得最终显示的测试结果内容丰富,提高了用户的体验。

第三方面,本发明提供了一种移动终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器运行所述计算机程序以使所述移动终端执行上述的接口测试方法。

第四方面,本发明提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述的接口测试方法的步骤。

附图说明

图1为本发明第一实施例提供的接口测试方法的流程图;

图2为本发明第二实施例提供的接口测试方法的流程图;

图3为本发明第三实施例提供的接口测试方法的流程图;

图4为本发明第四实施例提供的接口测试装置的结构示意图;

图5为本发明第五实施例提供的接口测试装置的结构示意图;

具体实施方式

为了便于更好地理解本发明,下面将结合相关实施例附图对本发明进行进一步地解释。附图中给出了本发明的实施例,但本发明并不仅限于上述的优选实施例。相反,提供这些实施例的目的是为了使本发明的公开面更加得充分。

请参阅图1,为本发明第一实施例提供的接口测试方法的流程图,包括步骤S10至S30。

步骤S10,接收接口测试指令,根据所述接口测试指令内的调试信息,在测试用例数据库中获取目标测试用例并构建测试脚本;

其中,用户发出的接口测试指令采用的发送方式可以为电信号、声音信号、数据信号或按键控制信号等方式,优选的,本实施例中用户通过web浏览器访问的接口的页面以进行接口测试指令的发送。

具体的,测试用例数据库中存储有多组调试信息与对应目标测试用例的对应关系,接口测试指令中存储有待测接口的数据信息和需要对待测接口进行检测的调试信息,该调试信息用于在测试用例数据库中匹配对应的目标测试用例,以方便后续测试脚本的测试运行步骤,进而保障了接口测试方法的顺利进行,提高了测试效率。

步骤S20,在所述测试脚本上运行所述目标测试用例,并实时获取测试日志;

其中,当完成目标测试用例的获取和测试脚本的构建时,会触发运行指令,以控制在测试脚本上运行目标测试用例,此时进入正常的接口测试步骤,优选的,此时会激活计时器,用于方便后续对测试步骤的耗时计算。

优选的,由于在测试脚本运行时测试数据可以通过采用编译日志的方式进行获取和显示,因此本实施例中会每间隔一段时间去请求获取对应的编译日志,以实时获取得到所述测试日志。

步骤S30,根据获取到的所述测试日志实时进行测试数据显示,并当所述测试脚本完成运行时,停止所述测试日志的获取,根据最后一次获取到的所述测试日志生成并显示测试结果。

其中,由于测试日志中会存储有已被测试完成的测试项的信息,因此可以通过对已完成的测试项的信息进行获取并显示的方式,使得所述接口测试方法拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解。

此外,由于当测试脚本完成运行时编译的日志内容不会进行更新,因此本实施例中通过当检测到测试脚本完成运行时,停止测试日志的获取,以防止测试资源的浪费,且由于最后一次获取到的测试日志中存储有最全面的测试数据,因此本实施例中通过最后一次获取到的测试日志已进行测试结果的分析和显示。

本实施例中,通过采用实时获取所述测试日志以进行实时所述测试数据显示方式,使得拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,且通过根据最后一次获取到的所述测试日志生成并显示测试结果的设计,使得最终显示的测试结果内容丰富,提高了用户的体验。

请参阅图2,为本发明第二实施例提供的接口测试方法的流程图,所述方法包括步骤S11至S71。

步骤S11,获取本地编写的接口测试用例,并根据预设存储规则将获取到的所述接口测试用例进行存储;

其中,通过存储本地编写好的所有测试用例的设计,以构建所述测试用例数据库,优选的,本实施例中所述根据预设存储规则将获取到的所述接口测试用例进行存储的步骤包括:

分别获取每个所述接口测试用例中的请求头、请求体和预期结果等信息,并采用多字段的方式形成对应关系进行存储,具体的,保存的格式均是按照key,value,valueType的对应关系进行存储如:[{"key":"planName","value":"班级分组方案","valueType":"String"}],表明出这个key是键,以及键对应的值的内容,以及value值的类型。

步骤S21,接收接口测试指令,获取所述接口测试指令内调试信息中的标识,并将所述标识与所述测试用例数据库进行匹配;

其中,所述标识用于在测试用例数据库查询对应的目标测试用例,所述标识可以为数字、字幕或其它符号,优选的,本实施例中所述标识为序号信息,测试用例数据库中接口测试用例采用排列序号的方式进行表格存储,因此当获取到当前的序号信息时,以进行测试用例的对应查询获取,提高了所述接口测试方法的测试效率。

步骤S31,当所述标识与所述测试用例数据库匹配成功时,获取匹配到的所述目标测试用例,并发出脚本构建信号,根据所述脚本构建信号查询预设脚本,以构建所述测试脚本;

其中,用户发出的接口测试指令采用的发送方式可以为电信号、声音信号、数据信号或按键控制信号等方式,优选的,本实施例中用户通过web浏览器访问的接口的页面以进行接口测试指令的发送。

具体的,测试用例数据库中存储有多组调试信息与对应目标测试用例的对应关系,接口测试指令中存储有待测接口的数据信息和需要对待测接口进行检测的调试信息,该调试信息用于在测试用例数据库中匹配对应的目标测试用例,以方便后续测试脚本的测试运行步骤,进而保障了接口测试方法的顺利进行,提高了测试效率。

步骤S41,在所述测试脚本上运行所述目标测试用例,获取本地存储的预设时间,并以所述预设时间为间隔持续发送日志请求,以实时获取测试日志;

其中,当完成目标测试用例的获取和测试脚本的构建时,会触发运行指令,以控制在测试脚本上运行目标测试用例,此时进入正常的接口测试步骤,优选的,此时会激活计时器,用于方便后续对测试步骤的耗时计算。

此外,由于在测试脚本运行时测试数据可以通过采用编译日志的方式进行获取和显示,因此本实施例中会每间隔一段时间去请求获取对应的编译日志,以实时获取得到所述测试日志。

步骤S51,根据获取到的所述测试日志实时进行测试数据显示,并当所述测试脚本完成运行时,停止所述测试日志的获取;

本实施例中,由于测试日志中会存储有已被测试完成的测试项的信息,因此可以通过对已完成的测试项的信息进行获取并显示的方式,使得所述接口测试方法拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,此外,由于当测试脚本完成运行时编译的日志内容不会进行更新,因此本实施例中通过当检测到测试脚本完成运行时,停止测试日志的获取,以防止测试资源的浪费。

步骤S61,获取所述目标测试用例的用例名称和预期结果,并获取最后一次的所述测试日志中存储的耗时时间、测试项成功数量信息、测试项失败数量信息和测试项错误数量信息;

具体的,由于最后一次获取到的测试日志中存储有最全面的测试数据,因此本实施例中通过最后一次获取到的测试日志已进行测试结果的分析和显示。

步骤S71,根据本地存储的显示规则,将所述用例名称、所述引起结果、所述耗时时间、所述测试项成功数量信息、所述测试项失败数量信息和所述测试项错误数量信息对应进行显示;

其中,通过将所有测试过程中产生的测试项的检测数据进行显示,以方便了用户对检测结果的查看。

优选的,本实施例中接口测试指令的获取可通过在web前端进行获取,web前端对调节信息进行获取后,将标识发送至Node服务端,Node服务端通过与jenkins服务器进行认证登陆后,将标识发送至jenkins服务器,jenkins服务器根据接收到的标识进行python脚本的构建,并在python脚本上运行目标测试用例,同时Node服务端会每隔一段时间去请求jenkins服务端获取对应的编译的日志,返回给到web前端的用户查看,并且同时根据某个标志位进行判断python接口测试脚本是否已经结束运行来决定是否停止向jenkins服务端的情况。

因此,可以看出本实施例拥有可视化的界面,接口用例的展示以及编辑一目了然。同时前端+Node端与python脚本的工作分工清晰,互不影响。前端+Node主要的工作就是进行接口用例的编辑,保存以及调用。而python脚本则是负责读取数据以及接口用例的执行。同时两端基本上是通过数据库进行数据的传递以及通过jenkins进行调用。

本实施中,通过采用实时获取所述测试日志以进行实时所述测试数据显示方式,使得拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,且通过根据最后一次获取到的所述测试日志生成并显示测试结果的设计,使得最终显示的测试结果内容丰富,提高了用户的体验。

请参阅图3,为本发明第三实施例提供的接口测试方法的流程图,所述方法包括步骤S12至S92。

步骤S12,获取本地编写的接口测试用例,并根据预设存储规则将获取到的所述接口测试用例进行存储;

其中,以构建所述测试用例数据库,所述根据预设存储规则将获取到的所述接口测试用例进行存储的步骤包括:

分别获取每个所述接口测试用例中的请求头、请求体和预期结果,并采用多字段的方式形成对应关系进行存储。

步骤S22,接收接口测试指令,获取所述接口测试指令内调试信息中的标识,并将所述标识与所述测试用例数据库进行匹配;

步骤S32,当所述标识与所述测试用例数据库匹配未成功时,判断所述接口测试指令中是否存储有当前编写测试用例;

其中,当所述调试信息中未获取所述标识时,也判定所述标识与所述测试用例数据库匹配未成功。

具体的,由于用户当前需要对接口进行新的测试用例的检测时,用户可通过在接口测试指令中不进行标识的携带,以使控制系统对用户当前撰写的当前编写测试用例进行存储和运行,使得所述接口测试方法多样化,提高了用户体验。

当步骤S32的判断结果为是时,执行步骤S42。

步骤S42,将所述当前编写测试用例设置为所述目标测试用例,并发出所述脚本构建信号,根据所述脚本构建信号查询预设脚本,以构建所述测试脚本;

步骤S52,在所述测试脚本上运行所述目标测试用例,获取本地存储的预设时间,并以所述预设时间为间隔持续发送日志请求,以实时获取测试日志;

步骤S62,根据获取到的所述测试日志实时进行测试数据显示,并当所述测试脚本完成运行时,停止所述测试日志的获取;

步骤S72,获取所述目标测试用例的用例名称和预期结果,并获取最后一次的所述测试日志中存储的耗时时间、测试项成功数量信息、测试项失败数量信息和测试项错误数量信息;

步骤S82,根据本地存储的显示规则,将所述用例名称、所述引起结果、所述耗时时间、所述测试项成功数量信息、所述测试项失败数量信息和所述测试项错误数量信息对应进行显示。

当步骤S22的判断结果为否时,执行步骤S92。

步骤S92,发出测试失败提示。

本实施例中,通过对所述标识的有无判断,以判定用户当前是否要进行接口测试用例的实时添加和测试,使得用户可以控制系统对用户当前撰写的当前编写测试用例进行存储和运行,使得所述接口测试方法多样化,提高了用户体验,通过采用实时获取所述测试日志以进行实时所述测试数据显示方式,使得拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,且通过根据最后一次获取到的所述测试日志生成并显示测试结果的设计,使得最终显示的测试结果内容丰富,提高了用户的体验。

请参阅图4,为本发明第三实施例提供的接口测试装置100的结构示意图,包括:

接收模块10,用于接收接口测试指令。

测试模块20,用于根据所述接口测试指令内的调试信息,在测试用例数据库中获取目标测试用例并构建测试脚本,并在所述测试脚本上运行所述目标测试用例,并实时获取测试日志。

显示模块30,用于根据获取到的所述测试日志实时进行测试数据显示,并当所述测试脚本完成运行时,停止所述测试日志的获取,并根据最后一次获取到的所述测试日志生成并显示测试结果。

存储模块40,用于分别获取每个所述接口测试用例中的请求头、请求体和预期结果,并采用多字段的方式形成对应关系进行存储。

所述测试模块20包括:

第一获取单元21,用于获取所述调试信息中的标识,并将所述标识与所述测试用例数据库进行匹配;

第二获取单元22,用于当所述第一获取单元21中标识与测试用例数据库匹配成功时,获取匹配到的所述目标测试用例,并发出脚本构建信号;

构建单元23,用于根据所述脚本构建信号查询预设脚本,以构建所述测试脚本。

所述显示模块30包括:

第三获取单元31,用于获取本地存储的预设时间,并以所述预设时间为间隔持续发送日志请求,以实时获取所述测试日志。

第四获取单元32,用于获取所述目标测试用例的用例名称和预期结果,并获取最后一次的所述测试日志中存储的耗时时间、测试项成功数量信息、测试项失败数量信息和测试项错误数量信息;

显示单元33,用于根据所述第四获取单元32的获取结果,根据本地存储的显示规则,将所述用例名称、所述引起结果、所述耗时时间、所述测试项成功数量信息、所述测试项失败数量信息和所述测试项错误数量信息对应进行显示。

本实施例中,通过所述测试模块20和所述显示模块30实时获取所述测试日志以进行实时所述测试数据显示方式,使得所述接口测试装置100拥有测试过程可视化的显示效果,能实时的对当前测试得到的数据进行显示,方便了用户对测试过程的了解,且通过所述显示模块30根据最后一次获取到的所述测试日志生成并显示测试结果的设计,使得最终显示的测试结果内容丰富,提高了用户的体验。

请参阅图5,为本发明第四实施例提供的接口测试装置100a的结构示意图,该第四实施例与第三实施例的结构大抵相同,其区别在于,本实施例中所述接口测试装置100a还包括:

判断模块50,用于当所述第一获取单元21中标识与测试用例数据库匹配未成功时,判断所述接口测试指令中是否存储有当前编写测试用例,若是,则将所述当前编写测试用例设置为所述目标测试用例,并发出所述脚本构建信号;若否,则发出测试失败提示。

本实施例中,通过所述判断模块50对所述标识的有无判断,以判定用户当前是否要进行接口测试用例的实时添加和测试,使得用户可以控制系统对用户当前撰写的当前编写测试用例进行存储和运行,提高了所述接口测试装置100a的测试效率,提高了用户体验。

本实施例还提供了一种移动终端,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器运行所述计算机程序以使所述移动终端执行上述的接口测试方法。

本实施例还提供了一种存储介质,其上存储有计算机程序,该程序在执行时,包括如下步骤:

接收接口测试指令,根据所述接口测试指令内的调试信息,在测试用例数据库中获取目标测试用例并构建测试脚本;

在所述测试脚本上运行所述目标测试用例,并实时获取测试日志;

根据获取到的所述测试日志实时进行测试数据显示,并当所述测试脚本完成运行时,停止所述测试日志的获取,并根据最后一次获取到的所述测试日志生成并显示测试结果。所述的存储介质,如:ROM/RAM、磁碟、光盘等。

上述实施例描述了本发明的技术原理,这些描述只是为了解释本发明的原理,而不能以任何方式解释为本发明保护范围的限制。基于此处的解释,本领域的技术人员不需要付出创造性的劳动即可联想到本发明的其他具体实施方式,这些方式都将落入本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1