结合项目代码,实现方法级别mock

实操 - demo

1. 场景一(更改响应数据)

根据电力账号,包含十个2(2222222222)的请求数据,mock掉响应数据的 responseCode

1.1. 生效配置

APP联动的展示效果:

1.2. 代码获取数据

类绝对路径:

com.transsnet.palmpay.payroute.controller.trans.ElectricityController

电力账号校验方法名:

queryAccount

返回结构参数:

com.transsnet.palmpay.common.RespResult<com.transsnet.palmpay.payroute.dto.electricity.ElectricityAccountResponse>

pay-route请求体结构:

{
    /**
     * accountNumber,maybe meterNumber
     */
    private String accountNumber;

    private String mobileNo;

    private String itemId;

    private String billerId;

    private ElectricityPaymentItemEnum paymentItem;
}

响应结构体:

{

    // todo
    @ApiModelProperty("responseCode,Temporary Deleted at a later stage")
    private String responseCode;

    // todo
    @ApiModelProperty("responseMessage,Temporary Deleted at a later stage")
    private String responseMessage;

    @ApiModelProperty("palmpayCode")
    private String palmpayCode;

    private TransactionChannel channel;

    @ApiModelProperty("user selects payment item")
    private ElectricityPaymentItemEnum paymentItem;

    @ApiModelProperty("Actual mode of payment item")
    private ElectricityPaymentItemEnum actualPaymentItem;

    private Boolean valid = false;

    @ApiModelProperty("account number")
    private String accountNumber;

    @ApiModelProperty("account name")
    private String accountName;

    @ApiModelProperty("account address")
    private String address;

    @ApiModelProperty("debt amount,unit:cent 分")
    private Long debtAmount;

    @ApiModelProperty("Minimum contribution amount,unit:cent 分")
    private Long minAmount;

    @ApiModelProperty("Maximum contribution amount,unit:cent 分")
    private Long maxAmount;

    private String extend;
}

pay-route正常响应数据:

{
    "respCode": "00000000",
    "respMsg": "success",
    "data": {
        "responseCode": "palmpay_test_021",
        "responseMessage": null,
        "palmpayCode": "xx",
        "channel": "QUICKTELLER",
        "paymentItem": "xx",
        "actualPaymentItem": "xx",
        "valid": true,
        "accountNumber": "22222",
        "accountName": "2sjdhasohdlkashdkajsdkasjdsajdksajdaksjdkasjdalksjdaksdjaksjdaksjdaksjdalksjfkheflknkfjakjfksljflksjfalkjfalksf",
        "address": null,
        "debtAmount": null,
        "minAmount": 10000,
        "maxAmount": null,
        "extend": null
    }
}

2. 场景二(延时)

mock 20秒时延(超时 10 秒)

配置单位:ms

配置链接:PalmPay Devops

3. 可能碰到的问题记录(未走到mock)

Apollo没有配置电力的对应item,导致查询账号的响应为空(渠道不会去校验账号),最终导致没有mock生效。

apollo(airtiem服务)里面单独配置一下的 ng.electricity.postPayItemIds ng.electricity.prePayItemIds

否则不调用渠道

欢迎关注公众号,与Joker一起探索测试之道。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Anthony_路人甲

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值