支付异常测试方法总结

补偿:

    调下游异常:kill掉被调系统的服务,上游发起交易请求;

    调下游超时:改变被调用接口信息;

    下游未回调、回调超时、回调异常:

        1、请RD帮忙注释回调的代码;

        2、模拟下游未回调:

                a、完成一笔回调成功,上游也消费成功的交易
                b、更改上游系统数据库状态为需要的状态(成功失败or处理中)
                c、根据业务场景,决定是从上游手动重发交易触发补偿还是等待系统自动定时补偿

                d、将下游系统配置文件里地址改为错误的

        3、模拟下游未落单:

                a、完成一笔正常交易
                b、删除(没有删除权限就修改单号)下游订单、流水及记账信息
                c、更改上游订单状态及记账
                d、据业务场景,决定是从上游手动重发交易触发补偿还是等待系统自动定时补偿,或者通过curl的方式触发补偿。

                e、将下游系统的防火墙打开

                f、将下游系统调用时间改短一些

    上游更新数据库失败或连接数据库超时:

        1、请RD帮忙更改代码,数据库更新的部分写错逻辑;
        2、模拟数据库更新失败或为进行更新:

            a、成功完成一笔交易
            b、不改动下游的内容,将上游数据库信息进行更改(包括订单表、流水表及账务信息)
            c、根据业务场景,决定是从上游手动重发交易触发补偿还是等待系统自动定时补偿,或者通过curl的方式触发补偿。

            d、在检索记录的时间里改配置文件里的数据库地址

    对成功的订单进行curl补偿

回调:

    回调正常:

正常回调测试,包括下游处理中、下游成功、下游失败等情况的回调。

    回调异常:

        a、请RD帮忙将回调的地址改为错误的
        b、不配置MQ或配置错误的MQ-TOPIC
        c、回调先于同步通知
        d、通过curl的方式模拟回调
幂等:

    并发
    并发情况下的MQ重复消费;

    已成功的订单进行重发交易

    已经预下单的订单进行重发交易,根据不同场景分析是可以继续支付还是堵重(例如:交易引擎系统的处理是可以在原单基础上进行支付,pgw的处理是下单失败)
    如果是重发短信,需要关注1分钟内的次数限制

定时任务:

    定时任务关闭,关注是否跑定时;
    定时任务的配置(是否可以手动触发);
    定时任务开启,定时任务是否生效并关注定时周期;
    对账跑批的定时任务关注时间设定;
    手动改数据库状态后跑task;

你可能感兴趣的:(支付异常测试方法总结)