发明内容
本申请提供了接口测试稳定性的监控方法及装置,可及时发现接口稳定性方面存在的问题,以避免由于接口的稳定性问题而导致无法正常提供服务,进而提升接口对应的线上业务的稳定性。
本申请提供了如下方案:
一种接口测试稳定性的监控方法,包括:
统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知;
获取目标接口的错误日志并发送第二错误通知;
对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知;
用于获取预置时间段内目标接口的基本验证测试结果,并在测试失败率达到预置失败率阈值的情况下发送第四错误通知;
以便测试人员在接收到第一、第二、第三和/或第四错误通知后,将第一、第二、第三和/或第四错误通知中的问题反馈至相应的技术人员以解决问题。
优选的,还包括:
记录第一、第二、第三和/或第四错误通知中的问题,以及接收问题处理结果并记录。
优选的,所述目标接口为用于提供视频播放服务的接口,
统计目标接口的错误率,包括:
以预置时间间隔获取预置数量的转码后的视频VID,
拼接视频播放服务接口的统一资源定位器符URL并批量请求所述URL以播放视频;
获得视频播放服务接口返回的错误情况,以统计视频播放服务接口的错误率。
优选的,所述错误情况,包括:服务器错误或视频播放服务接口错误;
获得视频播放服务接口返回的错误情况,以统计视频播放服务接口的错误率,包括:
获取服务器错误的第一错误数量及视频播放服务接口错误的第二错误数量;
根据第一、第二错误数量及所述预置数量获得视频播放服务接口的错误率。
优选的,获取目标接口的错误日志,包括:
获取测试环境及线上环境目标接口的错误日志。
优选的,所述目标接口位于多个机房,
对比通过目标接口提供服务的数据的一致性,包括:
对比各个机房中通过目标接口提供服务的数据的一致性。
优选的,所述目标接口位于一个机房,
对比通过目标接口提供服务的数据的一致性,包括:
对比在测试环境下与线上环境下分别通过目标接口提供服务的数据的一致性。
优选的,在统计目标接口的错误率之后,还包括:
生成所述错误率对应的图表。
优选的,在对比通过所述测试接口提供服务的数据的一致性之后,还包括:
生成数据一致性的对比文件。
优选的,在获取预置时间段内目标接口的基本验证测试结果之后,还包括:
根据获取到的基本验证测试结果生成对应的图表。
一种接口测试稳定性的监控系统,包括:
错误率统计单元,用于统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知;
错误日志获取单元,用于获取目标接口的错误日志并发送第二错误通知;
接口数据对比单元,用于对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知;
基本验证测试结果获取单元,用于获取预置时间段内目标接口的基本验证测试结果,并在测试失败率达到预置失败率阈值的情况下发送第四错误通知;
以便测试人员在接收到第一、第二、第三和/或第四错误通知后,将第一、第二、第三和/或第四错误通知中的问题反馈至相应的技术人员以解决问题。
优选的,还包括:
问题及处理结果记录单元,用于记录第一、第二、第三和/或第四错误通知中的问题,以及接收问题处理结果并记录。
根据本申请提供的具体实施例,本申请公开了以下技术效果:
通过本申请实施例提供的接口测试稳定性的监控方法及装置,可统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知;还可获取目标接口的错误日志并发送第二错误通知;还可对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知;且还可用于获取预置时间段内目标接口的基本验证测试结果,并在所述测试失败率达到预置失败率阈值的情况下发送第四错误通知,以便测试人员在接收到第一、第二、第三和/或第四错误通知后,将第一、第二、第三和/或第四错误通知中的问题反馈至相应的技术人员以解决问题。以此,可通过从上述与稳定性相关的四个维度对接口测试的稳定性进行监控,根据四个维度的各自的特性执行不同的监控操作,以在接口稳定性出现问题时及时通知测试人员,以便测试人员根据通知将问题及时反馈给相关技术人员,以提高解决接口问题的效率,且可避免由于接口的稳定性问题而导致无法正常提供服务,进而提升接口对应的线上业务的稳定性,大大提升用户体验。
当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。
在本实施例中,所述接口可为各种类型的接口,可根据对接口测试的稳定性的特性来设定其对应的稳定性维度,比如可包括接口的错误率、与接口相关的错误报告、通过接口提供服务的数据一致性、新版本接口的基本验证测试结果等,并且可通过对上述稳定性维度的监控、反馈等以实现对接口测试稳定性的监控及相关问题的处理,具体实现方式可参看以下申请实施例。参看图1,本申请实施例首先提供了一种接口测试稳定性的监控方法,可以包括以下步骤:
S101,统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知。
在本实施例中,可以目标接口为用于提供视频播放服务的接口为例进行说明。
在目标接口为用于提供视频播放服务的接口的情况下,统计目标接口的错误率,可包括如下步骤:
首先,以预置时间间隔获取预置数量的转码后的视频VID。
在具体实现时,比如可在每天以预置时间间隔(比如每隔2小时等)获取预置数量(比如10000条等)最新上传并转码的视频VID。其中,视频中可包括用户上传的视频、预先准备的用于测试用的特殊视频等,所述特殊视频可设置为覆盖比较全面的测试场景,以便获得全面、准确的测试结果。
接下来,拼接视频播放服务接口的统一资源定位器符(URL,Uniform ResoureLocator)以完成视频播放地址的设置,并批量请求所述URL以播放对应的视频。
然后,获得视频播放服务接口返回的错误情况,以统计视频播放服务接口的错误率。
其中,所述错误情况可包括:服务器错误或视频播放服务接口错误。
在实际应用中,一种情况是,接口返回http状态码为200,但返回内容中有标识服务业务本身异常的错误码,则可表明服务器是没有问题的,此时则为视频播放服务接口错误。
还有一种情况是,接口返回http状态码为404、503等异常结果,或是接口响应超时(该超时时间可根据服务的不同业务需求设定),则可表明是服务器出现了问题(比如服务器宕机等情况),此时则为服务器错误。
在获得到上述视频播放服务接口返回的错误情况后,也就是获取服务器错误的第一错误数量及视频播放服务接口错误的第二错误数量后,可根据第一、第二错误数量及所述预置数量(即上述10000条的视频VID数量)获得视频播放服务接口的错误率,比如可通过如下公式进行计算:
错误率=(第一错误数量+第二错误数量)/10000×100%。
在计算出接口的错误率后,则可在错误率达到预置错误率阈值(可根据实际需要进行设置,比如可设置为30%等)的情况下通过邮件等形式发送第一错误通知,以便测试人员及时获知接口错误率的情况。
此外,还可生成错误率对应的图表,也即将错误率通过图表(比如以曲线等形式)显示出来,以更直观、清晰的显示出一天或一个时间段内的接口错误率曲线,并且,在后续步骤中,可根据相关人员的需要将错误率图表进行导出的操作。
S102,获取目标接口的错误日志并发送第二错误通知。在本实施例中,错误日志可包括测试环境中目标接口的错误日志及线上环境目标中接口的错误日志。
具体实现时,可能由于目标接口运行良好,不存在错误日志,因此获取不到错误日志。
在能够获取到上述两种环境中目标接口的错误日志的情况下,借助错误日志管理工具(比如,logstash)来展示获取到的错误日志,并通过邮件等形式发送第二错误通知,以便测试人员及时获知错误日志中包含的接口错误情况。
通通过查看错误日志,可发现代码级错误及框架级的错误,通过查看测试环境中的错误日志可有助于发现较为隐藏的BUG,通过查看接口上线后的线上环境中的错误日志,以有助于发现线上服务的稳定性。
根据实际需要,在后续步骤中,可根据相关人员的需要对获取到的错误日志进行导出的操作。
S103,对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知。
在具体实现时,可包括多种情况,比如一种情况下,所述目标接口存在多机房部署,即目标接口位于多个机房,此时,则可对比各个机房中通过目标接口提供服务的数据的一致性,以保证各个机房提供服务的一致性。还有一种情况是,所述目标接口位于一个机房,此时,则可对比在测试环境下与线上环境下分别通过目标接口提供服务的数据的一致性,以保证提高测试的接口版本的增量或减量不会影响到非相关内容。
当对比结果为不一致的情况下,也就是说,各个机房中通过目标接口提供服务的数据的不一致时,或者,在测试环境下与线上环境下分别通过目标接口提供服务的数据不一致时,则可通过邮件等形式发送第三错误通知,以便测试人员及时获知通过所述目标接口提供服务的数据不一致的情况。
此外,还可根据对比结果生成对应的对比文件,并且可根据实际需要,在后续步骤中,可根据相关人员的需要对该对比文件进行导出的操作。
S104,用于获取预置时间段内目标接口的基本验证测试结果,并在所述测试失败率达到预置失败率阈值的情况下发送第四错误通知。
在实际应用中,基本验证测试(BVT,Build Verification Test)是运行在每一个提交测试的新版本产品上(在本实施例中,则对应为各种类型的接口),用来验证该版本产品在发布给测试同学进行更深入的测试之前,是否是可测的测试集。在通常情况下,BVT是自动运行的,如果BVT失败,则表明该版本不合格,则会再一次将该版本分配到开发人员那里进行修正,直至测试通过。
通过获取基本验证测试结果,可查看一段时间以来开发人员提交的测试版本的质量,可及时获知数据层面存在的问题,有助于提高代码质量,进而有助于提高版本质量,保证线上服务的稳定性。
在获取到预置时间段内(可根据实际需要进行设置,比如一周内等)目标接口的基本验证测试结果,并可根据测试结果得到该预置时间段内的测试失败率,在所述测试失败率达到预置失败率阈值(可根据实际需要进行设置,比如可为20%)的情况下发送第四错误通知,以便测试人员及时获知目标接口版本的测试情况,并可将测试情况反馈至开发人员,以及时查看代码质量,进而保证代码质量。
此外,还可根据获取到的基本验证测试结果生成对应的图表,以图形化界面来显示测试结果,并且可根据实际需要,在后续步骤中,可根据相关人员的需要对该测试结果图表行导出的操作。
需要说明的是,以上关于稳定性的四个维度的监控均为本申请实施例的监控过程中不可或缺的部分,可为四个平行的监控部分且可不分先后顺序,测试人员在接收到第一、第二、第三和/或第四错误通知后,将第一、第二、第三和/或第四错误通知中的问题反馈至相应的技术人员,以便技术人员及时解决问题,以保证接口的良好运行,并且可通过接口更好的为用户提供服务。
此外,参看图2所示,还可在发送第一、第二、第三和/或第四错误通知后,还可包括:
S105,记录第一、第二、第三和/或第四错误通知中的问题,以及接收问题处理结果并记录。
首先,可记录第一、第二、第三和/或第四错误通知中的问题。然后,在测试人员查看到上述错误通知后,可及时通知相关技术人员,同时还可将各错误通知中涉及问题的图表或文件等导出并提供给相关技术人员,在相关技术人员将上述错误通知中的问题解决后可将问题处理结果进行反馈,此时,则可接收反馈的问题处理结果并记录。以此,可提供查看所有错误通知中的问题及问题的处理结果,以对后期的开发、测试提供有效的指导作用。
在具体实现时,本申请实施例可对应为一个接口测试稳定性的监控系统,并可提供相关的操作界面,在测试人员在接收到上述第一、第二、第三和/或第四错误通知(比如通过邮件接收)候,可对错误通知中涉及的问题进行检查,若确定存在问题,则可向相关技术人员进行反馈,同时,可进入所述操作界面对与错误通知中涉及问题相关的图表或文件导出并提供给相关技术人员,在相关技术人员将上述错误通知中的问题解决后可将问题处理结果进行反馈,此时,则可接收反馈的问题处理结果并记录。
在实际应用中,有可能已经出现问题但是没有成功进行通知(比如邮件系统出现问题、网络出现问题,等等),因此,在测试人员未接收到任何错误通知的情况下,则可定时(比如每天上午8点)进入该监控系统的操作界面中去查看是否存在错误通知,若存在,则同样可通知相关技术人员,同时对与错误通知中涉及问题相关的图表或文件导出并提供给相关技术人员,在相关技术人员将上述错误通知中的问题解决后可将问题处理结果进行反馈,此时,则可接收反馈的问题处理结果并记录。
通过本申请实施例提供的接口测试稳定性的监控方法,可统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知;还可获取目标接口的错误日志并发送第二错误通知;还可对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知;且还可用于获取预置时间段内目标接口的基本验证测试结果,并在所述测试失败率达到预置失败率阈值的情况下发送第四错误通知,以便测试人员在接收到第一、第二、第三和/或第四错误通知后,将第一、第二、第三和/或第四错误通知中的问题反馈至相应的技术人员以解决问题。以此,可通过从上述与稳定性相关的四个维度对接口测试的稳定性进行监控,根据四个维度的各自的特性执行不同的监控操作,以在接口稳定性出现问题时及时通知测试人员,以便测试人员根据通知将问题及时反馈给相关技术人员,以提高解决接口问题的效率,且可避免由于接口的稳定性问题而导致无法正常提供服务,进而提升接口对应的线上业务的稳定性,大大提升用户体验。
与前述实施例中提供的接口测试稳定性的监控方法相对应,本申请实施例还提供了一种接口测试稳定性的监控装置,参见图3,该装置可以包括:
错误率统计单元31,可用于统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知。
在实际应中,在所述目标接口为用于提供视频播放服务的接口的情况下,
所述错误率统计单元31,可具体用于:
以预置时间间隔获取预置数量的转码后的视频VID,
拼接视频播放服务接口的统一资源定位器符URL并批量请求所述URL以播放视频;
获得视频播放服务接口返回的错误情况,以统计视频播放服务接口的错误率。
其中,所述错误情况,包括:服务器错误或视频播放服务接口错误;
基于此,错误率统计单元31错误率统计单元,可具体用于:
获取服务器错误的第一错误数量及视频播放服务接口错误的第二错误数量;
根据第一、第二错误数量及所述预置数量获得视频播放服务接口的错误率。
此外,所述错误率统计单元31,还可用于,在统计目标接口的错误率之后,生成所述错误率对应的图表。
错误日志获取单元32,可用于获取目标接口的错误日志并发送第二错误通知。
在具体实现时,所述错误日志获取单元32,可具体用于:获取测试环境及线上环境目标接口的错误日志。
接口数据对比单元33,可用于对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知。
在具体实现时,一种情况下,所述目标接口位于多个机房。
基于此,接口数据对比单元33,可具体用于:对比各个机房中通过目标接口提供服务的数据的一致性。
另一种情况下,所述目标接口位于一个机房。
基于此,接口数据对比单元33,可具体用于:对比在测试环境下与线上环境下分别通过目标接口提供服务的数据的一致性。
此外,接口数据对比单元33,还可用于,在对比通过所述测试接口提供服务的数据的一致性之后,生成数据一致性的对比文件。
基本验证测试结果获取单元34,用于获取预置时间段内目标接口的基本验证测试结果,并在所述测试失败率达到预置失败率阈值的情况下发送第四错误通知。
可选的,基本验证测试结果获取单元34,还可用于,在获取预置时间段内目标接口的基本验证测试结果之后,还根据获取到的基本验证测试结果生成对应的图表。
此外,参看图4所示,所述装置,还可包括,问题及处理结果记录单元35,用于记录第一、第二、第三和/或第四错误通知中的问题,以及接收问题处理结果并记录。
通过本申请实施例提供的接口测试稳定性的监控装置,可统计目标接口的错误率,在错误率达到预置错误率阈值的情况下发送第一错误通知;还可获取目标接口的错误日志并发送第二错误通知;还可对比通过所述目标接口提供服务的数据的一致性,并在对比结果为不一致的情况下发送第三错误通知;且还可用于获取预置时间段内目标接口的基本验证测试结果,并在所述测试失败率达到预置失败率阈值的情况下发送第四错误通知,以便测试人员在接收到第一、第二、第三和/或第四错误通知后,将第一、第二、第三和/或第四错误通知中的问题反馈至相应的技术人员以解决问题。以此,可通过从上述与稳定性相关的四个维度对接口测试的稳定性进行监控,根据四个维度的各自的特性执行不同的监控操作,以在接口稳定性出现问题时及时通知测试人员,以便测试人员根据通知将问题及时反馈给相关技术人员,以提高解决接口问题的效率,且可避免由于接口的稳定性问题而导致无法正常提供服务,进而提升接口对应的线上业务的稳定性,大大提升用户体验。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的接口测试稳定性的监控方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。