带有支付功能的产品如何测试?(三)

2015-10-10
  • 1611
  • 0
        -------流程方面的测试
        如果说金额测试是支付产品测试的心脏,那么,流程测试则是支付产品测试的身体了,没有身体的架构和支撑,任何功能都是空谈了。
        进行流程测试必须先设计测试用例,因为流程测试涉及不同功能分支的排列组合,如果不合理安排测试用例,很可能会发生重复测试和遗漏,影响测试效率。那么流程测试到底应该如何设计测试用例或者说如何进行测试呢?
        首先,应该进行完整的正常流程的测试,如果正常流程都还没有走通,何谈异常情况测试、特殊情况测试呢?在正常流程的测试中,要对各种情况进行合理的组合,比如
        1) 不同的购买方式:一件商品为一个订单的支付、多件商品为一个订单的支付、每单一件商品多订单组合的支付、每单多件商品多订单组合的支付;
        2) 不同的支付币种:使用人民币支付、使用外币支付、使用人民币和外币组合支付;
        3) 不同的付款人:用户ID自己支付、由他人代付、为他人代付;
        4) 不同的支付方式:银行借记卡支付、银行信用卡支付、支付宝支付、微信支付、手机支付等。
        其次,在正常流程测试通过的情况下,还需要进行特殊情况的测试:
        1) 在支付过程中发生了中断,支付没有完成,之后继续支付至支付成功的情况;
        2) 在支付过程中发生了中断,支付没有完成,之后不再支付取消订单的情况;
        3) 在支付过程中发生了中断,支付没有完成,结束支付后,再次支付至支付成功的情况。
        最后,还要进行异常情况的测试:
        1) 在支付过程中交易端支付成功,银行或第三方支付平台未扣款;
        2) 交易端支付失败,商品未购买成功,但银行或第三方支付平台已扣款;
        3) 交易端支付成功,银行或第三方支付平台也已扣款,但显示购买失败;
        4) 交易端支付失败,银行或第三方支付平台未扣款,但显示购买成功等。
        总之,流程测试是整个支付产品测试中最容易出问题也是最复杂最重要的测试,只有流程测试通过了,产品支付的功能才能正常实现。