一种对业务服务进行测试的方法和装置制造方法及图纸

技术编号:21199707 阅读:17 留言:0更新日期:2019-05-25 01:12
本发明专利技术公开了一种对业务服务进行测试的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:采集第一返回参数,其中,所述第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提供的传入参数生成的;使用所述传入参数调用待测试的业务服务,然后采集第二返回参数,其中所述第二返回参数是所述待测试的业务服务的业务逻辑根据所述传入参数生成的;对比所述第一返回参数和第二返回参数,并根据所述第一返回参数和第二返回参数的差异判断所述待测试的业务服务是否异常。该实施方式的测试结果更加真实有效。

A Method and Device for Testing Business Services

The invention discloses a method and device for testing business services, which relates to the field of computer technology. One specific embodiment of the method includes: collecting the first return parameter, in which the first return parameter is generated by the business logic of the original business service according to the incoming parameters provided by the caller of the business service when calling the original business service; using the afferent parameters to call the business service to be tested, and then collecting the second return parameter, in which the second return parameter is the one provided by the caller of the business service. The business logic of the business service to be tested is generated according to the afferent parameters; the first return parameter and the second return parameter are compared, and the abnormality of the business service to be tested is judged according to the difference between the first return parameter and the second return parameter. The test results of the embodiment are more real and effective.

【技术实现步骤摘要】
一种对业务服务进行测试的方法和装置
本专利技术涉及计算机
,尤其涉及一种对业务服务进行测试的方法和装置。
技术介绍
目前,在对业务系统中的新旧业务进行切换前,需要由开发人员在线下模拟线上环境对上线的新业务进行测试,在测试合格后,对新旧业务进行线上切换,业务系统中原先调用旧业务服务的调用方将直接切换为调用该新业务服务。在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:在对新业务进行测试时,即使通过线下的测试用例对新业务进行了多次的评审和验证,但是线下的测试环境往往不能完全模拟线上真实场景,测试结果不能准确的反映出新业务的情况,导致线上新旧业务切换存在一定的风险,系统的稳定性较低,在发现新业务有问题后切回到旧业务,影响面以及影响范围都不好评估。因此,亟需一种测试结果更加真实有效的对业务服务进行测试的方法和装置。
技术实现思路
有鉴于此,本专利技术实施例提供一种对业务服务进行测试的方法和装置,测试结果更加真实有效。为实现上述目的,根据本专利技术实施例的一个方面,提供了一种对业务服务进行测试的方法,包括:采集第一返回参数,其中,所述第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提供的传入参数生成的;使用所述传入参数调用待测试的业务服务,然后采集第二返回参数,其中所述第二返回参数是所述待测试的业务服务的业务逻辑根据所述传入参数生成的;对比所述第一返回参数和第二返回参数,并根据所述第一返回参数和第二返回参数的差异判断所述待测试的业务服务是否异常。进一步的,所述使用所述传入参数调用待测试的业务服务的步骤包括:把所述原业务服务的传入参数存入消息队列,以供所述待测试的业务服务从所述消息队列中取出所述原业务服务的传入参数,并基于该传入参数生成所述第二返回参数。进一步的,所述采集第一返回参数的步骤之后还包括:把所述第一返回参数存入所述消息队列;所述对比所述第一返回参数和第二返回参数的步骤包括:从所述消息队列中取出所述第一返回参数;对比取出的所述第一返回参数与所述第二返回参数,以确定所述第一返回参数和第二返回参数的差异。本专利技术实施例提供的对业务服务进行测试的方法,还包括:在业务服务的调用方调用业务服务时,判断该调用方的用户是否在白名单内,若是,则将业务服务的调用方提供的传入参数发送给待测试的业务服务,然后采集所述待测试的业务服务的业务逻辑根据所述传入参数生成的返回参数。为实现上述目的,根据本专利技术实施例的一个方面,提供了一种对业务服务进行测试的装置,包括:第一采集模块,用于采集第一返回参数,其中,所述第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提供的传入参数生成的;第二采集模块,用于使用所述传入参数调用待测试的业务服务,然后采集第二返回参数,其中所述第二返回参数是所述待测试的业务服务的业务逻辑根据所述传入参数生成的;对比模块,用于对比所述第一返回参数和第二返回参数,并根据所述第一返回参数和第二返回参数的差异判断所述待测试的业务服务是否异常。进一步的,所述第二采集模块还用于把所述原业务服务的传入参数存入消息队列,以供所述待测试的业务服务从所述消息队列中取出所述原业务服务的传入参数,并基于该传入参数生成所述第二返回参数。进一步的,所述第二采集模块还用于把所述第一返回参数存入所述消息队列;所述对比模块还用于从所述消息队列中取出所述第一返回参数,然后对比取出的所述第一返回参数与所述第二返回参数,以确定所述第一返回参数和第二返回参数的差异。本专利技术实施例提供的对业务服务进行测试的装置,还包括:切流模块,用于在业务服务的调用方调用业务服务时,判断该调用方的用户是否在白名单内,若是,则将业务服务的调用方提供的传入参数发送给待测试的业务服务;第三采集模块,用于采集所述待测试的业务服务的业务逻辑根据所述传入参数生成的返回参数。根据本专利技术实施例的另一个方面,提供了一种对业务服务进行测试的电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术实施例提供的对业务服务进行测试的方法。根据本专利技术实施例的另一个方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本专利技术实施例提供的对业务服务进行测试的方法。本专利技术实施例提供对业务服务进行测试的方法和装置,将线上系统的真实运行场景中调用原业务服务的传入参数和返回参数,作为测试参数对待测试的业务服务进行调用测试,相对于传统的通过线下的测试用例测试新业务服务的测试方法,本专利技术提供的测试方法的测试数据、测试环境和测试结果更加真实有效,极大的提高了新业务服务上线后的可用性和正确性。并且本专利技术提供的测试方法,通过异步调用待测试的业务服务进行测试,方法逻辑拆分的更为清晰,不需要等待对比结果返回,就可以进行后续的采集流程,从而缩减了测试时间,提高了测试效率。本专利技术提供的切流测试过程,通过白名单方式从原业务服务的流量中切换部分流量到待测试的业务服务,然后采集待测试的业务服务的返回参数进行抽检,在利用真实线上环境对新业务服务测试的同时,将新业务服务对线上的影响范围降至最小。上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。附图说明附图用于更好地理解本专利技术,不构成对本专利技术的不当限定。其中:图1是本专利技术实施例提供的对业务服务进行测试的方法的流程图;图2是本专利技术实施例提供的对业务服务进行测试的方法的应用流程示意图;图3是本专利技术实施例提供的对业务服务进行测试的装置的示意图;图4是本专利技术实施例可以应用于其中的示例性系统架构图;图5是适于用来实现本专利技术实施例的电子设备的计算机系统的结构示意图。具体实施方式以下结合附图对本专利技术的示范性实施例做出说明,其中包括本专利技术实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本专利技术的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。本专利技术实施例提供一种对业务服务进行测试的方法,所述方法应用于在面向服务的架构SOA中,对待上线的新业务服务进行测试,待上线的新业务服务的功能与线上的旧业务服务的功能基本相同,在新业务服务测试合格后,新业务服务将上线替代原来的旧业务服务,通过对新旧业务服务进行流量切换,完成新业务服务的上线。在面向服务的架构SOA中,服务是应用程序的功能单元。如图1所示,本专利技术实施例提供对业务服务进行测试的方法包括:步骤S101、步骤S102和步骤S103。在步骤S101中,采集第一返回参数,其中,第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提供的传入参数生成的。业务服务的调用方调用原业务服务,通过原业务服务的业务逻辑实现其所需要的数据处理功能,原业务服务根据业务调用方提供的传入参数进行数据处理生成返回参数,然后将返回参数,即第一返回参数返回给调用方,完成调用。步骤S101对第一返回参数进行采集,用于在后续步骤对待测试的业务服务进行测试。在步骤S102中,使用传入参数调用待测试的业务服务,然后采集第二返回参数,其中第二返回参数是待测试的业务服务的本文档来自技高网...

【技术保护点】
1.一种对业务服务进行测试的方法,其特征在于,包括:采集第一返回参数,其中,所述第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提供的传入参数生成的;使用所述传入参数调用待测试的业务服务,然后采集第二返回参数,其中所述第二返回参数是所述待测试的业务服务的业务逻辑根据所述传入参数生成的;对比所述第一返回参数和第二返回参数,并根据所述第一返回参数和第二返回参数的差异判断所述待测试的业务服务是否异常。

【技术特征摘要】
1.一种对业务服务进行测试的方法,其特征在于,包括:采集第一返回参数,其中,所述第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提供的传入参数生成的;使用所述传入参数调用待测试的业务服务,然后采集第二返回参数,其中所述第二返回参数是所述待测试的业务服务的业务逻辑根据所述传入参数生成的;对比所述第一返回参数和第二返回参数,并根据所述第一返回参数和第二返回参数的差异判断所述待测试的业务服务是否异常。2.根据权利要求1所述的方法,其特征在于,所述使用所述传入参数调用待测试的业务服务的步骤包括:把所述原业务服务的传入参数存入消息队列,以供所述待测试的业务服务从所述消息队列中取出所述原业务服务的传入参数,并基于该传入参数生成所述第二返回参数。3.根据权利要求2所述的方法,其特征在于,所述采集第一返回参数的步骤之后还包括:把所述第一返回参数存入所述消息队列;所述对比所述第一返回参数和第二返回参数的步骤包括:从所述消息队列中取出所述第一返回参数;对比取出的所述第一返回参数与所述第二返回参数,以确定所述第一返回参数和第二返回参数的差异。4.根据权利要求1至3中任一项所述的方法,其特征在于,还包括:在业务服务的调用方调用业务服务时,判断该调用方的用户是否在白名单内,若是,则将业务服务的调用方提供的传入参数发送给待测试的业务服务,然后采集所述待测试的业务服务的业务逻辑根据所述传入参数生成的返回参数。5.一种对业务服务进行测试的装置,其特征在于,包括:第一采集模块,用于采集第一返回参数,其中,所述第一返回参数是原业务服务的业务逻辑根据业务服务的调用方调用原业务服务时提...

【专利技术属性】
技术研发人员:赵彦明
申请(专利权)人:北京京东尚科信息技术有限公司北京京东世纪贸易有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1