一种支付超时告警测试方法及其系统技术方案

技术编号:36366545 阅读:19 留言:0更新日期:2023-01-18 09:23
本发明专利技术提供了一种支付超时告警测试方法,所述方法包括如下步骤:步骤S1、本地创建订单管理数据库,创建临时订单表和历史超时订单表,设置历史超时订单表的属性订单编号,超时次数,各组件支付回调值;每次测试任务执行前清空临时订单表数据;步骤S2、设置一测试任务,将测试任务部署在持续集成工具jenkins上,设置构建频率为一预设时间,持续集成构建测试任务,监控线上订单支付状况;步骤S3、测试任务完成后,将测试的告警消息进行推送,操作人员根据推送消息中的异常组件回调值来准确定位导致支付超时的异常环节;自动化监控更加的智能化,减少不必要的排查流程。减少不必要的排查流程。减少不必要的排查流程。

【技术实现步骤摘要】
一种支付超时告警测试方法及其系统


[0001]本专利技术涉及计算机通讯
,特别是一种支付超时告警测试方法及其系统。

技术介绍

[0002]一个产品的订单支付涉及到产品自身和多个支付相关组件,以及第三方支付平台,多方之间彼此独立而又互相依赖,当出现支付超时时,用户在第三方支付平台已完成付费操作,金额已被扣除,但产品前台订单还是待支付状态,严重损害用户利益,产品方无法第一时间知晓问题,排查问题过程中流程繁杂。
[0003]现有技术中出现支付超时情况时,人工测试存在以下缺点:
[0004](1)无法快速定位异常环节,需要涉及到的多个支付相关组件方和产品方开发对各个支付流程中各个环节进行异常排查,浪费大量的时间和人力。
[0005](2)问题响应慢,出现问题无法第一时间被知晓,总是要等待外部反馈了才开始排查,损害用户利益。
[0006](3)排查的流程每次都相同,同样的排查步骤人工重复执行,效率低下,浪费时间。

技术实现思路

[0007]为克服上述问题,本专利技术的目的是提供一种支付超时告警测试方法,能够自动化初步排查订单超时问题,锁定异常组件,避免了多个组件人员排查的时间和人力投入。
[0008]本专利技术采用以下方案实现:一种支付超时告警测试方法,所述方法包括如下步骤:
[0009]步骤S1、本地创建订单管理数据库,创建临时订单表和历史超时订单表,设置历史超时订单表的属性订单编号,超时次数,各组件支付回调值;每次测试任务执行前清空临时订单表数据;/>[0010]步骤S2、设置一测试任务,将测试任务部署在持续集成工具jenkins上,设置构建频率为一预设时间,持续集成构建测试任务,监控线上订单支付状况;
[0011]步骤S3、测试任务完成后,将测试的告警消息进行推送,操作人员根据推送消息中的异常组件回调值来准确定位导致支付超时的异常环节。
[0012]进一步的,所述测试任务为:获取线上数据库第三方支付平台中已付费,且支付状态为待支付的订单到本地数据库,存放到所述临时订单表,本地的历史超时订单表读取临时订单表中原超时订单和新增的超时订单信息,对订单超时次数+1,筛选超时次数大于1的订单,依次校验第三方支付平台和各个组件的支付回调值,确定支付异常环节。
[0013]进一步的,所述测试任务进一步具体包括:通过Python+MySQL语言编写脚本从线上获取第三方支付平台的MySQL数据库的订单表,通过查询条件获取第三方支付平台支付回调正常,且支付状态为待支付的订单记录,写入到本地临时订单表;
[0014]根据本地历史超时订单表中的订单编号判断,如果本次获取的订单已在历史超时订单表中,则更新本地历史超时订单表中对应订单信息,超时次数累加1;如果本次获取的订单不在历史超时订单表,则新增对应订单信息到历史超时订单表,超时次数累加1;
[0015]从历史超时订单表中筛选出超时次数大于1的订单,其中,超时时间大于所述预设时间。
[0016]进一步的,所述依次校验第三方支付平台和各个组件的支付回调值,确定支付异常环节,具体为:根据支付流程中组件调用逻辑顺序进行校验:创建订单后,订单状态默认是待支付状态,用户完成支付操作后,第三方支付平台传递支付回调结果给支付中心组件,支付中心组件传递支付回调值给钱包组件,钱包组件传递支付回调值给产品服务端,产品服务端查询订单,订单状态更新;则支付中心组件查询订单,查看接口返回的TradeStatus字段,当TradeStatus=TRADE_SUCCESS说明第三方支付平台回调正常;钱包组件查询订单,查看接口返回的订单状态code字段,如果code=80010000表示支付成功,说明支付中心组件返回的支付回调正常;服务端查询订单,查看接口返回订单状态status字段,当status=1表示支付成功,说明钱包组件返回的支付回调值正常;依此来判断导致支付超时的源头异常组件或第三方支付平台。
[0017]本专利技术还提供了一种支付超时告警测试系统,所述系统包括:测试准备模块、执行测试模块、测试结果收集模块;
[0018]所述测试准备模块,用于在本地创建订单管理数据库,创建临时订单表和历史超时订单表,设置历史超时订单表的属性订单编号,超时次数,各组件支付回调值;每次测试任务执行前清空临时订单表数据;
[0019]所述执行测试模块,设置一测试任务,将测试任务部署在持续集成工具jenkins上,设置构建频率为一预设时间,持续集成构建测试任务,监控线上订单支付状况;
[0020]所述测试结果收集模块,用于测试任务完成后,将测试的告警消息进行推送,操作人员根据推送消息中的异常组件回调值来准确定位导致支付超时的异常环节。
[0021]进一步的,所述测试任务为:获取线上数据库第三方支付平台中已付费,且支付状态为待支付的订单到本地数据库,存放到所述临时订单表,本地的历史超时订单表读取临时订单表中原超时订单和新增的超时订单信息,对订单超时次数+1,筛选超时次数大于1的订单,依次校验第三方支付平台和各个组件的支付回调值,确定支付异常环节。
[0022]进一步的,所述测试任务进一步具体包括:通过Python+MySQL语言编写脚本从线上获取第三方支付平台的MySQL数据库的订单表,通过查询条件获取第三方支付平台支付回调正常,且支付状态为待支付的订单记录,写入到本地临时订单表;
[0023]根据本地历史超时订单表中的订单编号判断,如果本次获取的订单已在历史超时订单表中,则更新本地历史超时订单表中对应订单信息,超时次数累加1;如果本次获取的订单不在历史超时订单表,则新增对应订单信息到历史超时订单表,超时次数累加1;
[0024]从历史超时订单表中筛选出超时次数大于1的订单,其中,超时时间大于所述预设时间。
[0025]进一步的,所述依次校验第三方支付平台和各个组件的支付回调值,确定支付异常环节,具体为:根据支付流程中组件调用逻辑顺序进行校验:创建订单后,订单状态默认是待支付状态,用户完成支付操作后,第三方支付平台传递支付回调结果给支付中心组件,支付中心组件传递支付回调值给钱包组件,钱包组件传递支付回调值给产品服务端,产品服务端查询订单,订单状态更新;则支付中心组件查询订单,查看接口返回的TradeStatus字段,当TradeStatus=TRADE_SUCCESS说明第三方支付平台回调正常;钱包组件查询订单,
查看接口返回的订单状态code字段,如果code=80010000表示支付成功,说明支付中心组件返回的支付回调正常;服务端查询订单,查看接口返回订单状态status字段,当status=1表示支付成功,说明钱包组件返回的支付回调值正常;依此来判断导致支付超时的源头异常组件或第三方支付平台。
[0026]本专利技术的有益效果在于:1.该测试方法能够自动化初步排查订单超时问题,锁定异常组件,避免了多个组件人员排查的时间和人力投入。2.自动化监控支付超时能够在第一时间发现问题,及时本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种支付超时告警测试方法,其特征在于:所述方法包括如下步骤:步骤S1、本地创建订单管理数据库,创建临时订单表和历史超时订单表,设置历史超时订单表的属性订单编号,超时次数,各组件支付回调值;每次测试任务执行前清空临时订单表数据;步骤S2、设置一测试任务,将测试任务部署在持续集成工具jenkins上,设置构建频率为一预设时间,持续集成构建测试任务,监控线上订单支付状况;步骤S3、测试任务完成后,将测试的告警消息进行推送,操作人员根据推送消息中的异常组件回调值来准确定位导致支付超时的异常环节。2.根据权利要求1所述的一种支付超时告警测试方法,其特征在于:所述测试任务为:获取线上数据库第三方支付平台中已付费,且支付状态为待支付的订单到本地数据库,存放到所述临时订单表,本地的历史超时订单表读取临时订单表中原超时订单和新增的超时订单信息,对订单超时次数+1,筛选超时次数大于1的订单,依次校验第三方支付平台和各个组件的支付回调值,确定支付异常环节。3.根据权利要求2所述的一种支付超时告警测试方法,其特征在于:所述测试任务进一步具体包括:通过Python+MySQL语言编写脚本从线上获取第三方支付平台的MySQL数据库的订单表,通过查询条件获取第三方支付平台支付回调正常,且支付状态为待支付的订单记录,写入到本地临时订单表;根据本地历史超时订单表中的订单编号判断,如果本次获取的订单已在历史超时订单表中,则更新本地历史超时订单表中对应订单信息,超时次数累加1;如果本次获取的订单不在历史超时订单表,则新增对应订单信息到历史超时订单表,超时次数累加1;从历史超时订单表中筛选出超时次数大于1的订单,其中,超时时间大于所述预设时间。4.根据权利要求1所述的一种支付超时告警测试方法,其特征在于:所述依次校验第三方支付平台和各个组件的支付回调值,确定支付异常环节,具体为:根据支付流程中组件调用逻辑顺序进行校验:创建订单后,订单状态默认是待支付状态,用户完成支付操作后,第三方支付平台传递支付回调结果给支付中心组件,支付中心组件传递支付回调值给钱包组件,钱包组件传递支付回调值给产品服务端,产品服务端查询订单,订单状态更新;则支付中心组件查询订单,查看接口返回的TradeStatus字段,当TradeStatus=TRADE_SUCCESS说明第三方支付平台回调正常;钱包组件查询订单,查看接口返回的订单状态code字段,如果code=80010000表示支付成功,说明支付中心组件返回的支付回调正常;服务端查询订单,查看接口返回订单状态status字段,当status=1表示支付成功,说明钱包组件返回的支付回调值正常;依此来判断导致支付超时的源头异常组件或第三方支付平台。5.一种支付超时告警测试系统,其特征在于:所述系统包...

【专利技术属性】
技术研发人员:刘德建郑贞贞宋诗莹薛锶涵李凌王柟林琛
申请(专利权)人:福建天晴在线互动科技有限公司
类型:发明
国别省市:

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

1