一种模块间接口的测试方法及系统的制作方法

文档序号:6488585阅读:225来源:国知局
一种模块间接口的测试方法及系统的制作方法
【专利摘要】本发明提供了一种模块间接口的测试方法,包括:获取待测模块输出的数据包,利用存储的接口信息对获取的数据包中字段进行检测,得到检测结果;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段;本发明还提供一种模块间接口的测试系统。根据本发明提供的技术方案,能够降低模块的修改成本,提高开发效率。
【专利说明】一种模块间接口的测试方法及系统
【【技术领域】】
[0001]本发明涉及互联网的测试技术,尤其涉及一种模块间接口的测试方法及系统。【【背景技术】】
[0002]目前,模块的开发过程中,模块测试主要包括模块功能测试和模块间接口测试,其中,对系统中模块间接口测试通常是在模块功能测试之后,进行模块间联调时进行的,此时如果发现接口问题,由于系统中模块已经定型,因此,发现问题不及时,导致修改时需要耗费很多的人力物力,修改成本非常高,导致整个开发周期的延迟。
[0003]现有技术中,通过定期地监测系统中各个模块间接口传递的数据,对模块间接口进行测试,该测试过程中,需要根据经过长时间的学习得到的接口中数据的可信区间对数据进行监测,如果数据超出可信区间,则发出报警给开发人员。如果开发人员对接口进行升级处理,利用上述方案,将会导致出现误报情况。
[0004]另外,目前系统中模块的开发过程中,不同模块的开发人员之间需要进行长时间的沟通,来确认下游模块是否能够接受上游模块的接口的改动,然后才能确定开发方案,因此消耗过多的时间进行沟通,导致开发效率较低。

【发明内容】

[0005]本发明提供了一种模块间接口的测试方法及系统,能够降低模块的修改成本,提高开发效率。
[0006]本发明的具体技术方案如下:
[0007]根据本发明一优选实施例,一种模块间接口的测试方法,包括:`[0008]获取待测模块输出的数据包,利用存储的接口信息对获取的数据包中字段进行检测,得到检测结果;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段。
[0009]上述方法中,所述利用存储的接口信息对获取的数据包中字段进行检测为:
[0010]判断数据包中的字段是否完全符合所述接口信息对字段的规定,如果是,则确定所述待测模块与所述下游模块之间的接口通过测试,否则确定所述待测模块与所述下游模块之间的接口未通过测试。
[0011]上述方法中,所述利用存储的接口信息对获取的数据包中字段进行检测为:
[0012]判断数据包中的字段是否完全符合所述接口信息中第一优先级的接口信息对字段的规定;如果是,判断所述数据包中的字段是否完全符合所述接口信息中第二优先级的接口信息对字段的规定;否则确定所述待测模块与所述下游模块之间的接口未通过测试;
[0013]当所述数据包中的字段完全符合第二优先级的接口信息对字段的规定时,确定所述待测模块与所述下游模块之间的接口通过测试;否则确定所述待测模块与所述下游模块之间的接口未通过测试。
[0014]上述方法中,[0015]所述第一优先级的接口信息为用户通过图形用户界面CTI提供的接口信息;
[0016]所述第二优先级的接口信息是对系统中模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值,进行学习后得到的接口信息。
[0017]上述方法中,该方法还包括:
[0018]通过GUI对存储的第一优先级的接口信息进行增加、删除、修改或查询操作,并当对所述第一优先级的接口信息进行修改操作时,进行修改冲突检测;或,
[0019]批量导入或批量导出所述第一优先级的接口信息。
[0020]上述方法中,所述获取待测模块输出的数据包为:
[0021]从待测模块的出接口抓取所述待测模块输出的数据包,或接收用户导入的数据包;
[0022]对获取到的数据包进行解析,得到数据包中包含的字段。
[0023]上述方法中,所述利用存储的接口信息对获取的数据包中字段进行检测之前,该方法还包括:在解析后得到的身份标识字段中提取所述数据包发往的下游模块的身份标识,根据所述身份标识获取对应的接口信息。
[0024]上述方法中,该方法还包括:
[0025]当确定所述待测模块与所述下游模块之间的接口未通过测试时,将报警信息发送给用户,并获取用户依据所述报警信息对接口信息是否错误的判断结果。
[0026]上述方法中,所述获取用户依据所述报警信息对接口信息是否错误的判断结果为:
[0027]如果用户触发结束按钮,则获取所述判断结果为存储的接口信息没有错误,是数据包中字段错误;
[0028]如果用户触发修改按钮,则获取所述判断结果为存储的接口信息错误。
[0029]上述方法中,该方法还包括:
[0030]当接口信息存在错误时,对模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行重新学习,得到新的接口信息,并利用新的接口信息替换错误的接口信息。
[0031]一种模块间接口的测试系统,包括:接口管理平台和接口检测平台;所述接口管理平台包括数据库,所述接口检测平台包括检测模块;其中,
[0032]数据库,用于存储接口信息;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段;
[0033]检测模块,用于获取待测模块输出的数据包,利用所述数据库存储的接口信息对获取的数据包中字段进行检测,得到检测结果。
[0034]上述系统中,所述检测模块在利用所述数据库存储的接口信息对获取的数据包中字段进行检测时,具体为:
[0035]判断数据包中的字段是否完全符合所述接口信息对字段的规定,如果是,则确定所述待测模块与所述下游模块之间的接口通过测试,否则确定所述待测模块与所述下游模块之间的接口未通过测试。
[0036]上述系统中,所述检测模块在利用所述数据库存储的接口信息对获取的数据包中字段进行检测时,具体为:[0037]判断数据包中的字段是否完全符合所述接口信息中第一优先级的接口信息对字段的规定;如果是,判断所述数据包中的字段是否完全符合所述接口信息中第二优先级的接口信息对字段的规定;否则确定所述待测模块与所述下游模块之间的接口未通过测试;
[0038]当所述数据包中的字段完全符合第二优先级的接口信息对字段的规定时,确定所述待测模块与所述下游模块之间的接口通过测试;否则确定所述待测模块与所述下游模块之间的接口未通过测试。
[0039]上述系统中,所述接口管理平台还包括⑶I和机器学习模块;其中,
[0040]所述GUI,用于获取用户提供的接口信息并作为所述第一优先级的接口信息;
[0041]所述机器学习模块,用于对系统中模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行学习,得到所述第二优先级的接口信息。
[0042]上述系统中,
[0043]所述CTI还用于,接收对存储的第一优先级的接口信息进行增加、删除、修改或查询操作,并当对所述第一优先级的接口信息进行修改操作时,触发所述接口管理平台中的冲突检测模块进行修改冲突检测;或,
[0044]所述⑶I还用于,批量导入或批量导出所述第一优先级的接口信息。
[0045]上述系统中,所述检测模块获取待测模块输出的数据包时,具体为:
[0046]从待测模块的出接口抓取所述待测模块输出的数据包,或接收用户导入的数据包;对获取到的数据包进行解析,得到数据包中包含的字段。
[0047]上述系统中,所述检测模块,还用于在解析后得到的身份标识字段中提取所述数据包发往的下游模块的身份标识,根据所述身份标识从所述数据库获取对应的接口信息。
[0048]上述系统中,所述接口检测平台还包括:监控界面;
[0049]当确定所述待测模块与所述下游模块之间的接口未通过测试时,所述检测模块还用于将报警信息发送给用户;
[0050]所述监控界面,用于获取用户依据所述报警信息对接口信息是否错误的判断结果O
[0051]上述系统中,所述监控界面在获取用户依据所述报警信息对接口信息是否错误的判断结果时,具体为:
[0052]如果用户触发结束按钮,则获取所述判断结果为存储的接口信息没有错误,是数据包中字段错误;
[0053]如果用户触发修改按钮,则获取所述判断结果为存储的接口信息错误。
[0054]上述系统中,所述机器学习模块,还用于当接口信息存在错误时,对模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行重新学习,得到新的接口信息,并利用新的接口信息替换错误的接口信息。
[0055]由以上技术方案可以看出,本发明提供的具有以下有益效果:
[0056]可以利用待测模块的下游模块的入接口信息,对待测模块的输出进行测试,从而能够检测出模块的接口问题,实现在模块功能测试的过程进行模块间接口测试,解决目前只有在模块功能测试完成后,才能进行的模块间接口测试的问题,能够尽快发现问题,进而在模块未定型之前对模块进行修改,从而降低修改成本,提高开发效率。【【专利附图】

【附图说明】】
[0057]图1是本发明实现模块间接口的测试系统的优选实施例的结构示意图;
[0058]图2是本发明实现模块间接口的测试方法的优选实施例的流程示意图。
【【具体实施方式】】
[0059]本发明的基本思想是:获取待测模块输出的数据包,利用存储的接口信息对获取的数据包中字段进行检测,得到检测结果;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段。
[0060]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0061]本发明提供一种模块间接口的测试系统,图1是本发明实现模块间接口的测试系统的优选实施例的结构示意图,如图1所示,该系统包括:接口管理平台10和接口检测平台20 ;其中,接口管理平台10进一步包括:图形用户界面(⑶I, Graphical User Interface)101、冲突检测模块102、数据库103 ;接口检测平台20进一步包括:监控界面201、机器学习模块202、检测模块203。
[0062]基于上述系统,本发明还提供一种模块间接口的测试方法,图2是本发明实现模块间接口的测试方法的优选实施例的流程示意图,如图2所示,该优选实施例包括以下步骤:
[0063]步骤201,存储系统中模块间接口的接口信息;所述接口信息为模块的入接口信息,用于限制模块的入接口 接收的字段。
[0064]具体的,接口管理平台的数据库中存储系统中模块间接口的接口信息,所述接口信息为模块的入接口信息,所述接口信息用于限制模块的入接口中接收的数据包中的字段;所述数据库中保存两个级别的接口信息,即第一优先级的接口信息和第二优先级的接口信息,其中,第一优先级的接口信息的比对优先级高于第二优先级的接口信息。
[0065]其中,所述第一优先级的接口信息由用户通过接口管理平台提供的⑶I配置在数据库中,所述用户为模块的开发人员;所述第一优先级的接口信息包含如下信息中的一种或至少两种的任意组合:
[0066]IN:表示字段中数据的允许取值,例如,字段中的数据必须是某某数值IN(404,403,200);
[0067]Ν0Τ_ΙΝ:表示字段中数据的不允许取值,例如,数据必须不能是某某数值Ν0Τ_IN(404,403,200);
[0068]ALL_NUM:表示字段中的数据必须全是数字;
[0069]ALL_CHR:表示字段中的数据必须全是字符;
[0070]RANGE:表示字段中的数据的取值范围,例如数据必须在某个范围之内RANGEdOO, 500);
[0071]N0T_IN_RANGE:表示字段中的数据不能位于的取值范围;
[0072]CONTAIN:表示字段中的数据必须包含的信息;
[0073]N0T_C0NTAIN:表示字段中的数据必须不能包含的信息;
[0074]START_WITH:表示字段中的起始数据;[0075]N0T_START_WITH:表示字段中不能存在的起始数据;
[0076]LENGTH_IN:表示字段中的数据的长度范围。
[0077]所述第二优先级的接口信息包括字段中的数据的取值范围和字段类型;第二优先级的接口信息是接口校验平台的机器学习模块,根据系统中模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行学习后得到的接口信息,例如,数据包中某字段在模块间接口中传递的字段类型均为int32,字段中数据的取值范围是0-99 ;所述机器学习模块通过接口管理平台提供的交互接口,将学习到的接口信息发送给接口管理平台的数据库进行存储。
[0078]此外,根据模块间接口的升级情况,用户可以通过⑶I对存储在数据库的第一优先级的接口信息进行增加、删除、修改或查询等操作,可以向数据库中批量导入第一优先级的接口信息,也可以从数据库中批量导出接口信息;其中,如果用户对某模块的接口信息进行修改时,接口管理平台的冲突检测模块可以在收到用户的修改信息时,进行修改冲突检测,判断修改的接口信息是否与其他模块的接口信息发生冲突,例如,修改的接口信息中规定的字段类型是下游模块的入接口信息中规定的不允许出现的字段类型的情况;如果不冲突,则允许进行修改,如果冲突,则拒绝进行修改,并向系统开发人员报告冲突信息。
[0079]步骤202,获取待测模块输出的数据包,利用所述接口信息对获取的数据包中字段进行检测,得到检测结果。
[0080]具体的,对系统的模块进行功能测试的同时,接口检测平台的检测模块利用抓取工具从待测模块的出接口抓取该待测模块输出的数据包,或接口检测平台的监控界面接收用户导入的数据包,并将该 数据包发送给检测模块;检测模块对获取到的数据包进行解析,得到数据包中包含的字段,至少得到两个字段,且其中一个字段为身份标识字段,该身份标识字段中包含该数据包发往的模块的身份标识,在解析后,从身份标识字段中提取出数据包发往的下游模块的身份标识,根据该模块的身份标识通过接口管理平台提供的交互接口,从数据库中获取对应的接口信息,该接口信息为数据包发往的下游模块的入接口信息,即需要利用待测模块的下游模块的入接口信息,对待测模块的出接口发出的数据包进行检测,以实现对待测模块的接口的检测。
[0081]检测模块获取到接口信息后,利用哈希算法将解析得到的每个字段都与接口信息进行比对,判断数据包中的字段是否完全符合所述接口信息对字段的规定,如果是,则确定所述待测模块与所述下游模块之间的接口通过测试,否则确定所述待测模块与所述下游模块之间的接口未通过测试;其中,可以先将字段与比对优先级高的第一优先级的接口信息进行比对,判断解析得到的字段是否完全符合第一优先级的接口信息对字段的规定,例如,字段中数据的值是否为第一优先级的接口信息中规定的取值,字段中数据是否包含第一优先级的接口信息中不允许包含的信息等;当检测结果是字段完全符合第一优先级的接口信息对字段的规定时,判断该数据包中的字段是否完全符合第二优先级的接口信息对字段的规定;反之,如果检测结果是解析得到的字段不是完全符合第一优先级的接口信息对字段的规定,则确定所述待测模块与所述下游模块之间的接口未通过测试,执行步骤203 ;也可以利用其他的比对算法,本优选实施例中,利用哈希算法进行比对,可以提高比对效率,从而提高整个测试效率,但不仅限于利用哈希算法。
[0082]检测模块判断数据包中的字段是否完全符合第二优先级的接口信息对字段的规定,例如,字段中的数值是否属于第二优先级的接口信息中规定的取值范围,字段类型是否符合第二优先级的接口信息中规定的字段类型;当检测结果是字段完全符合第二优先级的接口信息对字段的规定时,确定所述待测模块与所述下游模块之间的接口通过测试,继续对数据包中其他字段进行检测,如果该数据包中所有字段都通过检测,则继续获取下一个数据包进行检测;反之,如果检测结果是该字段不是完全符合第二优先级的接口信息对字段的规定,则确定所述待测模块与所述下游模块之间的接口未通过测试,执行步骤203。
[0083]步骤203,当检测结果为待测模块与下游模块之间的接口未通过测试时,将报警信息发送给用户,并获取用户依据所述报警信息对接口信息是否错误的判断结果。
[0084]具体的,当检测结果为待测模块与下游模块之间的接口未通过测试时,表示待测模块发出的数据包不能够被下游模块所接受,则检测模块将报警信息发送给用户;其中,所述报警信息包括检测出的与接口信息不相符的字段以及具体的不相符内容,如字段当前的取值与接口信息中规定的取值范围;检测模块向用户发送报警信息可以是通过接口检测平台提供的监控界面实时显示报警信息,也可以是周期通过邮件或短信息的方式,将URL信息发送给用户,用户点击URL信息中的链接查看报警信息。
[0085]用户收到报警信息后,根据该报警信息判断是数据包中字段错误,还是数据库中存储的接口信息错误;用户依据数据包中字段错误判断流程,判断数据包中字段是否错误,例如,一般的数据包中字段错误是由于两个模块的用户对中间接口的理解不一致,导致上游模块的出接口输出的数据包不能够被下游模块接受,因此需要判断模块开发时定义的需求文档、接口描述文档、接口使用场景是否有误,如果确定是模块开发时定义的模块相关内容存在错误,则表示数据包中字段错误,用户在监控界面上触发结束按钮,则监控界面获取的判断结果为数据包中字段错误,存储的接口信息没有错误,则触发检测模块结束当前检测流程,结束后用户可以对原始定义的模块相关内容进行修改;反之,如果确定模块开发时定义的模块相关内容没有错误,用户在监控界面上触发修改按钮,则监控界面获取的判断结果为数据包中字段没有错误,而是数据库中存储的接口信息存在错误,然后执行步骤204。
[0086]例如,接口已经升级,但是接口信息没有在数据库中进行相应的升级,将会发生报警,但是该报警不是由于数据包中字段错误引发的,因此该报警为误报,这里才需要根据报警信息进行进一步的判断。
[0087]步骤204,当接口信息存在错误时,对接口管理平台中存储的错误的接口信息进行修改;
[0088]具体的,监控界面触发机器学习模块,收到触发后,机器学习模块对模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行重新学习,得到新的接口信息,将学习到的新的接口信息发送给接口管理平台的数据库;数据库收到新的接口信息后,利用新的接口信息替换错误的接口信息,保证数据库中的接口信息的正确性。
[0089]利用上述优选实施例提供的技术方案,可以利用待测模块的下游模块的入接口信息,对待测模块的输出进行测试,能够检测出模块的接口问题,实现在模块功能测试的过程进行模块间接口测试,解决目前只有在模块功能测试完成后,才能进行的模块间接口测试的问题,在模块功能测试时进行模块间接口测试,能够尽快发现问题,进而在模块未定型之前对模块进行修改,从而降低修改成本,提高开发效率。同时,报警后需要进一步确认是否是数据库中存储的接口信息的错误,如此,可以实现在数据库中接口信息出现错误的情况下,对数据库中接口信息进行修改,保证数据库中的接口信息的正确性,避免出现误报。由于数据库中接口信息具有较高的正确性,在进行后续模块开发时,可以直接利用数据库中其他模块的接口信息进行模块开发,减少开发人员的沟通,提高开发效率。
[0090]为实现上述方法,如图3所示,本发明提供的模块间接口的测试系统中:
[0091]数据库103,用于存储接口信息;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段;
[0092]检测模块203,用于获取待测模块输出的数据包,利用所述数据库103存储的接口信息对获取的数据包中字段进行检测,得到检测结果。
[0093]其中,所述检测模块203利用所述数据库存储的接口信息对获取的数据包中字段进行检测具体为:
[0094]判断数据包中的字段是否完全符合所述接口信息对字段的规定,如果是,则确定所述待测模块与所述下游模块之间的接口通过测试,否则确定所述待测模块与所述下游模块之间的接口未通过测试。
[0095]其中,所述检测模块203利用所述数据库存储的接口信息对获取的数据包中字段进行检测具体为:判断数据包中的字段是否完全符合所述接口信息中第一优先级的接口信息对字段的规定;如果是,判断所述数据包中的字段是否完全符合所述接口信息中第二优先级的接口信息对字段的规定;否则确定所述待测模块与所述下游模块之间的接口未通过测试;当所述数据包中的字段完全符合第二优先级的接口信息对字段的规定时,确定所述待测模块与所述下游模块之间的接口通过测试;否则确定所述待测模块与所述下游模块之间的接口未通过测试。
[0096]其中,所述⑶I 101,用于获取用户提供的接口信息并作为所述第一优先级的接口
信息;
[0097]所述机器学习模块202,用于对系统中模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行学习,得到所述第二优先级的接口信息。
[0098]其中,所述⑶I 101还用于,接收对存储的第一优先级的接口信息进行增加、删除、修改或查询操作,并当对所述第一优先级的接口信息进行修改操作时,触发所述接口管理平台10中的冲突检测模块102进行修改冲突检测;或,
[0099]所述⑶I 101还用于,批量导入或批量导出所述第一优先级的接口信息。
[0100]其中,所述检测模块203获取待测模块输出的数据包具体为:从待测模块的出接口抓取所述待测模块输出的数据包,或接收用户导入的数据包;对获取到的数据包进行解析,得到数据包中包含的字段。
[0101]其中,所述检测模块203,还用于在解析后得到的身份标识字段中提取所述数据包发往的下游模块的身份标识,根据所述身份标识从所述数据库103获取对应的接口信息。
[0102]其中,当确定所述待测模块与所述下游模块之间的接口未通过测试,所述检测模块203还用于将报警信息发送给用户;
[0103]所述监控界面201,用于获取用户依据所述报警信息对接口信息是否错误的判断结果。
[0104]其中,所述监控界面201获取用户依据所述报警信息对接口信息是否错误的判断结果具体为:
[0105]如果用户触发结束按钮,则获取所述判断结果为存储的接口信息没有错误,是数据包中字段错误;
[0106]如果用户触发修改按钮,则获取所述判断结果为存储的接口信息错误。
[0107]其中,机器学习模块202,还用于当接口信息存在错误时,对模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行重新学习,得到新的接口信息,并利用新的接口信息替换错误的接口信息。
[0108]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种模块间接口的测试方法,其特征在于,该方法包括: 获取待测模块输出的数据包,利用存储的接口信息对获取的数据包中字段进行检测,得到检测结果;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段。
2.根据权利要求1所述的方法,其特征在于,所述利用存储的接口信息对获取的数据包中字段进行检测为: 判断数据包中的字段是否完全符合所述接口信息对字段的规定,如果是,则确定所述待测模块与所述下游模块之间的接口通过测试,否则确定所述待测模块与所述下游模块之间的接口未通过测试。
3.根据权利要求1所述的方法,其特征在于,所述利用存储的接口信息对获取的数据包中字段进行检测为: 判断数据包中的字段是否完全符合所述接口信息中第一优先级的接口信息对字段的规定;如果是,判断所述数据包中的字段是否完全符合所述接口信息中第二优先级的接口信息对字段的规定;否则确定所述待测模块与所述下游模块之间的接口未通过测试; 当所述数据包中的字段完全符合第二优先级的接口信息对字段的规定时,确定所述待测模块与所述下游模块之间的接口通过测试;否则确定所述待测模块与所述下游模块之间的接口未通过测试。
4.根据权利要求3所述的方法,其特征在于, 所述第一优先级的接口信息为用户通过图形用户界面GUI提供的接口信息; 所述第二优先级的接口信息是对系统中模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值,进行学习后得到的接口信息。`
5.根据权利要求3或4所述的方法,其特征在于,该方法还包括: 通过CTI对存储的第一优先级的接口信息进行增加、删除、修改或查询操作,并当对所述第一优先级的接口信息进行修改操作时,进行修改冲突检测;或, 批量导入或批量导出所述第一优先级的接口信息。
6.根据权利要求1所述的方法,其特征在于,所述获取待测模块输出的数据包为: 从待测模块的出接口抓取所述待测模块输出的数据包,或接收用户导入的数据包; 对获取到的数据包进行解析,得到数据包中包含的字段。
7.根据权利要求6所述的方法,其特征在于,所述利用存储的接口信息对获取的数据包中字段进行检测之前,该方法还包括:在解析后得到的身份标识字段中提取所述数据包发往的下游模块的身份标识,根据所述身份标识获取对应的接口信息。
8.根据权利要求2或3所述的方法,其特征在于,该方法还包括: 当确定所述待测模块与所述下游模块之间的接口未通过测试时,将报警信息发送给用户,并获取用户依据所述报警信息对接口信息是否错误的判断结果。
9.根据权利要求8所述的方法,其特征在于,所述获取用户依据所述报警信息对接口信息是否错误的判断结果为: 如果用户触发结束按钮,则获取所述判断结果为存储的接口信息没有错误,是数据包中字段错误; 如果用户触发修改按钮,则获取所述判断结果为存储的接口信息错误。
10.根据权利要求8或9所述的方法,其特征在于,该方法还包括: 当接口信息存在错误时,对模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行重新学习,得到新的接口信息,并利用新的接口信息替换错误的接口信息。
11.一种模块间接口的测试系统,其特征在于,该系统包括:接口管理平台和接口检测平台;所述接口管理平台包括数据库,所述接口检测平台包括检测模块;其中, 数据库,用于存储接口信息;所述接口信息为待测模块的下游模块的入接口信息,用于限制所述入接口接收的字段; 检测模块,用于获取待测模块输出的数据包,利用所述数据库存储的接口信息对获取的数据包中字段进行检测,得到检测结果。
12.根据权利要求11所述的系统,其特征在于,所述检测模块在利用所述数据库存储的接口信息对获取的数据包中字段进行检测时,具体为: 判断数据包中的字段是否完全符合所述接口信息对字段的规定,如果是,则确定所述待测模块与所述下游模块之间的接口通过测试,否则确定所述待测模块与所述下游模块之间的接口未通过测试。
13.根据权利要求11所述的系统,其特征在于,所述检测模块在利用所述数据库存储的接口信息对获取的数据包中字段进行检测时,具体为: 判断数据包中的字段是否完全符合所述接口信息中第一优先级的接口信息对字段的规定;如果是,判断所述数据包中的字段是否完全符合所述接口信息中第二优先级的接口信息对字段的规定;否则确定所述待测模块与所述下游模块之间的接口未通过测试; 当所述数据包中的字段完全符合第二优先级的接口信息对字段的规定时,确定所述待测模块与所述下游模块之间的接口通过测试;否则确定所述待测模块与所述下游模块之间的接口未通过测试。
14.根据权利要求13所述的系统,其特征在于,所述接口管理平台还包括GUI和机器学习模块;其中, 所述GUI,用于获取用户提供的接口信息并作为所述第一优先级的接口信息; 所述机器学习模块,用于对系统中模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行学习,得到所述第二优先级的接口信息。
15.根据权利要求13或14所述的系统,其特征在于, 所述GUI还用于,接收对存储的第一优先级的接口信息进行增加、删除、修改或查询操作,并当对所述第一优先级的接口信息进行修改操作时,触发所述接口管理平台中的冲突检测模块进行修改冲突检测;或, 所述Gn还用于,批量导入或批量导出所述第一优先级的接口信息。
16.根据权利要求11所述的系统,其特征在于,所述检测模块获取待测模块输出的数据包时,具体为: 从待测模块的出接口抓取所述待测模块输出的数据包,或接收用户导入的数据包;对获取到的数据包进行解析,得到数据包中包含的字段。
17.根据权利要求16所述的系统,其特征在于,所述检测模块,还用于在解析后得到的身份标识字段中提取所述数据包发往的下游模块的身份标识,根据所述身份标识从所述数据库获取对应的接口信息。
18.根据权利要求12或13所述的系统,其特征在于,所述接口检测平台还包括:监控界面; 当确定所述待测模块与所述下游模块之间的接口未通过测试时,所述检测模块还用于将报警信息发送给用户; 所述监控界面,用于获取用户依据所述报警信息对接口信息是否错误的判断结果。
19.根据权利要求18所述的系统,其特征在于,所述监控界面在获取用户依据所述报警信息对接口信息是否错误的判断结果时,具体为: 如果用户触发结束按钮,则获取所述判断结果为存储的接口信息没有错误,是数据包中字段错误; 如果用户触发修改按钮,则获取所述判断结果为存储的接口信息错误。
20.根据权利要求18或19所述的系统,其特征在于,所述机器学习模块,还用于当接口信息存在错误时,对模块间传递的字段的字段类型、字段中数据的最大值和字段中数据的最小值进行重新学习,得到新的接口信息,并利用新的接口信息替换错误的接口信息。
【文档编号】G06F11/267GK103678076SQ201210325447
【公开日】2014年3月26日 申请日期:2012年9月5日 优先权日:2012年9月5日
【发明者】徐健, 刘哲文, 张静 申请人:百度在线网络技术(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1