一种系统功能自校验方法和装置制造方法及图纸

技术编号:30970378 阅读:20 留言:0更新日期:2021-11-25 20:49
本发明专利技术公开了一种系统功能自校验方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:查找出业务系统的功能接口及其封装的接口方法,在所述接口方法的执行之前和执行之后加入自校验钩子;获取所述业务系统对应的业务数据库的连接配置,将所述业务数据库的配置信息替换为劫持的配置信息,以劫持数据库操作语句;接收业务请求,执行所述接口方法并且执行所述自校验钩子,从而对所述业务系统进行自校验。该实施方式能够解决现有的验证方式依赖人为、费时费力和遗漏验证环节的风险较高的技术问题。的技术问题。的技术问题。

【技术实现步骤摘要】
一种系统功能自校验方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种系统功能自校验方法和装置。

技术介绍

[0002]系统的功能往往需要人为来验证是否正确,例如:订单下单功能,上线了一个需求,支持特惠配送的功能,当用户选择了特惠配送,下了单据,怎么知道系统正常与否,需要人为查看多个系统(比如订单系统、配送系统、时效系统等)来验证是否正常。
[0003]因此现有的验证方式依赖人为、费时费力和遗漏验证环节的风险较高,尤其流程复杂的大型项目,验证的人力和时间成本更高。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供一种系统功能自校验方法和装置,以解决现有的验证方式依赖人为、费时费力和遗漏验证环节的风险较高的技术问题。
[0005]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种系统功能自校验方法,包括:
[0006]查找出业务系统的功能接口及其封装的接口方法,在所述接口方法的执行之前和执行之后加入自校验钩子;
[0007]获取所述业务系统对应的业务数据库的连接配置,将所述业务数据库的配置信息替换为劫持的配置信息,以劫持数据库操作语句;
[0008]接收业务请求,执行所述接口方法并且执行所述自校验钩子,从而对所述业务系统进行自校验。
[0009]可选地,查找出业务系统的功能接口及其封装的接口方法,在所述接口方法的执行之前和执行之后加入自校验钩子,包括:
[0010]扫描业务系统的编译码,查找出所述业务系统的功能接口,从而查找出所述功能接口封装的接口方法;
[0011]采用字节码增加技术,在所述接口方法的执行之前和执行之后加入自校验钩子。
[0012]可选地,所述自校验钩子包括获取开始执行时间的方法和校验接口入参的方法。
[0013]可选地,将所述业务数据库的配置信息替换为劫持的配置信息,以劫持数据库操作语句,包括:
[0014]采用p6spy,将所述业务数据库的url和驱动替换为p6spy提供的url和驱动,以劫持数据库操作语句。
[0015]可选地,接收业务请求,执行所述接口方法并且执行所述自校验钩子,从而对所述业务系统进行自校验,包括:
[0016]接收业务请求,以解析出所述业务请求携带的接口入参;
[0017]执行所述获取开始执行时间的方法,以获取所述接口方法的开始执行时间;
[0018]执行所述接口方法,从而将所述开始执行时间和接口入参写入所述业务数据库;
[0019]劫持数据库操作语句,从所述数据库操作语句中解析出写入所述业务数据库的接口入参;
[0020]执行所述校验接口入参的方法,以校验所述业务请求携带的接口入参与写入所述业务数据库的接口入参。
[0021]可选地,劫持数据库操作语句,从所述数据库操作语句中解析出写入所述业务数据库的接口入参,包括:
[0022]劫持数据库操作语句;
[0023]将所述接口方法的执行结束时间减去所述接口方法的开始执行时间,得到所述接口方法的执行时长;
[0024]将所述接口方法的执行时长加上预设的执行时间因子,得到解析时长;
[0025]在劫持所述数据库操作语句之后,在所述解析时长之内从所述数据库操作语句中解析出写入所述业务数据库的接口入参。
[0026]可选地,校验所述业务请求携带的接口入参与写入所述业务数据库的接口入参,包括:
[0027]将写入所述业务数据库的接口字段转换为符合驼峰命名法的接口字段;
[0028]校验所述业务请求携带的接口字段对应的参数值与所述业务请求携带的接口字段对应的参数值。
[0029]可选地,校验所述业务请求携带的接口入参与写入所述业务数据库的接口入参之后,还包括:
[0030]返回校验结果;其中,所述校验结果包括接口、接口方法、接口方法的开始执行时间、业务请求携带的接口入参、业务请求携带的接口入参与写入业务数据库的接口入参的差异信息、接口方法的执行时长。
[0031]另外,根据本专利技术实施例的另一个方面,提供了一种系统功能自校验装置,包括:
[0032]钩子模块,用于查找出业务系统的功能接口及其封装的接口方法,在所述接口方法的执行之前和执行之后加入自校验钩子;
[0033]劫持模块,用于获取所述业务系统对应的业务数据库的连接配置,将所述业务数据库的配置信息替换为劫持的配置信息,以劫持数据库操作语句;
[0034]校验模块,用于接收业务请求,执行所述接口方法并且执行所述自校验钩子,从而对所述业务系统进行自校验。
[0035]可选地,所述钩子模块还用于:
[0036]扫描业务系统的编译码,查找出所述业务系统的功能接口,从而查找出所述功能接口封装的接口方法;
[0037]采用字节码增加技术,在所述接口方法的执行之前和执行之后加入自校验钩子。
[0038]可选地,所述自校验钩子包括获取开始执行时间的方法和校验接口入参的方法。
[0039]可选地,所述劫持模块还用于:
[0040]采用p6spy,将所述业务数据库的url和驱动替换为p6spy提供的url和驱动,以劫持数据库操作语句。
[0041]可选地,所述校验模块还用于:
[0042]接收业务请求,以解析出所述业务请求携带的接口入参;
[0043]执行所述获取开始执行时间的方法,以获取所述接口方法的开始执行时间;
[0044]执行所述接口方法,从而将所述开始执行时间和接口入参写入所述业务数据库;
[0045]劫持数据库操作语句,从所述数据库操作语句中解析出写入所述业务数据库的接口入参;
[0046]执行所述校验接口入参的方法,以校验所述业务请求携带的接口入参与写入所述业务数据库的接口入参。
[0047]可选地,所述校验模块还用于:
[0048]劫持数据库操作语句;
[0049]将所述接口方法的执行结束时间减去所述接口方法的开始执行时间,得到所述接口方法的执行时长;
[0050]将所述接口方法的执行时长加上预设的执行时间因子,得到解析时长;
[0051]在劫持所述数据库操作语句之后,在所述解析时长之内从所述数据库操作语句中解析出写入所述业务数据库的接口入参。
[0052]可选地,所述校验模块还用于:
[0053]将写入所述业务数据库的接口字段转换为符合驼峰命名法的接口字段;
[0054]校验所述业务请求携带的接口字段对应的参数值与所述业务请求携带的接口字段对应的参数值。
[0055]可选地,所述校验模块还用于:
[0056]校验所述业务请求携带的接口入参与写入所述业务数据库的接口入参之后,返回校验结果;
[0057]其中,所述校验结果包括接口、接口方法、接口方法的开始执行时间、业务请求携带的接口入参、业务请求携带的接口入参与写入业务数据库的接口入参的差异信息、接口方法的执行时长本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种系统功能自校验方法,其特征在于,包括:查找出业务系统的功能接口及其封装的接口方法,在所述接口方法的执行之前和执行之后加入自校验钩子;获取所述业务系统对应的业务数据库的连接配置,将所述业务数据库的配置信息替换为劫持的配置信息,以劫持数据库操作语句;接收业务请求,执行所述接口方法并且执行所述自校验钩子,从而对所述业务系统进行自校验。2.根据权利要求1所述的方法,其特征在于,查找出业务系统的功能接口及其封装的接口方法,在所述接口方法的执行之前和执行之后加入自校验钩子,包括:扫描业务系统的编译码,查找出所述业务系统的功能接口,从而查找出所述功能接口封装的接口方法;采用字节码增加技术,在所述接口方法的执行之前和执行之后加入自校验钩子。3.根据权利要求1所述的方法,其特征在于,所述自校验钩子包括获取开始执行时间的方法和校验接口入参的方法。4.根据权利要求3所述的方法,其特征在于,将所述业务数据库的配置信息替换为劫持的配置信息,以劫持数据库操作语句,包括:采用p6spy,将所述业务数据库的url和驱动替换为p6spy提供的url和驱动,以劫持数据库操作语句。5.根据权利要求4所述的方法,其特征在于,接收业务请求,执行所述接口方法并且执行所述自校验钩子,从而对所述业务系统进行自校验,包括:接收业务请求,以解析出所述业务请求携带的接口入参;执行所述获取开始执行时间的方法,以获取所述接口方法的开始执行时间;执行所述接口方法,从而将所述开始执行时间和接口入参写入所述业务数据库;劫持数据库操作语句,从所述数据库操作语句中解析出写入所述业务数据库的接口入参;执行所述校验接口入参的方法,以校验所述业务请求携带的接口入参与写入所述业务数据库的接口入参。6.根据权利要求5所述的方法,其特征在于,劫持数据库操作语句,从所述数据库操作语句中解析出写入所述业务数据库的接口入参,包括:劫持数据库操作...

【专利技术属性】
技术研发人员:贾宁韩金魁岳晓敏
申请(专利权)人:北京京东振世信息技术有限公司
类型:发明
国别省市:

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

1