51Testing软件测试论坛

标题: 微信支付之解决如何在测试环境进行支付测试 [打印本页]

作者: 测试积点老人    时间: 2019-1-2 16:58
标题: 微信支付之解决如何在测试环境进行支付测试

前言:这个是公司服务号已上线,但是一直遗留的一个问题,无法再测试环境进行微信支付的测试,每次测试都需要在正式环境下测试。在我来这家公司后,老板这天突然给我说,这个问题比较着急,想解决一下。由于之前我也没做过相关的事情,就从测试环境走了一遍微信支付,果然不行,会报“不允许夸号支付”的错误。错误已经抛出,那就好解决了。


首先描述一下背景:

测试环境:testwx.aa.com 使用的微信公众号是在线申请的测试号(订阅号)

正式环境:wx.aa.com 使用的微信公众号是申请的已认证的服务号,并已开通了微信支付

老板给我说,别的公司的技术人员透露给他说,在测试环境使用正式的appid、key、商户号等等,就可以走正式微信号的支付来完成支付了。我照着做了一遍,发现会报“不允许夸号支付”的错误。


1,不允许夸号支付

    经过网络上的搜索,大概知道了是因为在订阅号的环境下支付导致的。当我给老板说这个情况的时候,老板觉得肯定不是这个原因,因为别人都可以的。于是我决定再弄一个服务号来尝试一下,正好之前有一个服务号,已认证,但未开通支付。把那个服务号的配置配好后,进入那个服务号,走了一遍支付流程,可以支付。事后,老板再次询问那边的技术人员,的确是这样的结果,那边使用的测试号,也是一个服务号,而不是订阅号。

2,如何不使用第二个公众号,也可以支付测试

   当我把这个结果告诉老板的时候,老板觉得,需要第二个公众号,太浪费资源了。于是,我们之后就尝试,在正式微信公众号下,发送测试微信的订单链接(商品链接等等),然后点击链接,进入支付页面,也是可以进行支付的。

3,实际开发配置要求

    以上都是讲的一些思路过程,那么实际在解决这个事情的时候,具体要怎么做呢?

    在测试环境下发起支付请求,所用到的appid、key、商户号等,都需要使用正式的,同时openid也要用正式的,也就是说,需要做一个openid的映射关系,将测试环境获取的openid转化为正式环境的openid,然后发起支付请求,就可以了。



作者: Miss_love    时间: 2021-1-5 14:47
支持分享




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2