银联付款方联调测试

  此篇文章为《对接银联仿真测试系统》一文的下一步,和银联进行联调测试,这里记录一些心得和技巧。

   银联本地仿真测试通过后,可以向服务代表进行申请,填写一系列表格后会通知我们具体时间和专门的测试人员来配合我们来进行联调测试。联调测试时间为10个工作日内免费,内容大体分为三部分----测试标准测试案例,测试全量测试案例,测试绑卡案例(两个)。需要全部测试完成通过后方可代表测试完成,测试完成会生成一个有银联盖章的测试报告,此时方可联系服务代表进行下一步的流程。

一,测试标准测试案例

    

    简介:进入官网用自己的商户号登录后,点击自己用户名下面的任务,会看到一个有测试编号的测试案例,如果你测试完成,最后看到的就是我上面展示的这张图片。因为标准测试案例和全量测试案例是属于银联不同的系统上面,并且全量测试案例是不需要登录就可以进行测试的,所以要区分好两者不同的测试地址。

    准备工作: 

         1.将自己项目中(或者demo)中配置银联的仿真证书全部换成项目中自带的银联测试证书,并注意路径。

         2.将项目中请求银联的联调地址恢复,(因为调自己本地仿真的关系,项目中一直配的是本地仿真地址,将之前注释掉的地址复用即可 )

         3.将银联发给我们的商户号配置进自己的常量或者配置文件中。

    注意事项:

          1.如果自己是内网开发,注意将回调地址配置成外网可访问地址(很重要)。

          2.联调测试环境依旧采用的是测试账号songxiao和cuinianmeng,相应的卡号和电话请一定对应。

 

测试标准测试案例:

         测试案例分为两步--主扫和被扫(被扫消费和预授权),我的感觉是和本地仿真是差不多的,本地仿真的作用是过滤掉一些容易犯的低级错误,不然十天的免费时间是不够你用的。只要你本地仿真可以过,这里想过真的很简单。

        主扫和被扫都直接本地访问自己的接口。主扫根据银联标准案例自动生成二维码链接,然后请求查询订单--查询营销--付款,被扫则直接本地生成二维码,放到银联标准测试案例上面进行识别读取,触发相应的条件后会进行相应的通知,此处敲黑板敲黑板敲黑板,

        重要的事情说三遍,本地仿真的时候是直接返回respCode为00和respMsg为成功即可通过,但此处还需要返回version,certId,signature共五个参数,其中需要对前四个参数进行签名和排序为key=value的格式,然后同步返回。很气的是当时和我对接的测试没有说清楚,害我弄来弄去卡在主扫案例的最后一个通知这里好久,这里代码我粘贴一下,直接调用自带的签名方法即可。

Map<String,String> respMap = new HashMap()<>;    
respMap.put("respCode", "00");
respMap.put("respMsg", "成功");
String rspMessage = returnMsg(respMap);
public String returnMsg(Map<String, String> respMap) {
		Map<String, String> reqData = AcpService.sign(respMap,DemoBase.encoding);
		respMap.put("certId", reqData.get("certId"));
		respMap.put("signature", reqData.get("signature"));
		String rspMessage = buildMap(respMap);
		String s = rspMessage.substring(0, rspMessage.length()-1);
		return rspMessage;
	}

 

public String buildMap(Map<String, String> map) {
		StringBuffer sb = new StringBuffer();
		if (map.size() > 0) {
			for (String key : map.keySet()) {
				sb.append(key + "=");
				if (StringUtils.isEmpty(map.get(key))) {
					sb.append("&");
				} else {
					String value = map.get(key);
					sb.append(value + "&");
				}
			}
		}
		return sb.toString();
	}

此处我将方法进行了封装,因为被扫里面很多地方都需要接收通知同步返回,所以这里我就处理掉了。

所以最后处理后同步响应即可,否则是不会通过你的测试案例的。切记切记。

二,测试全量测试案例

   这里直接提供地址联调环境全量仿真地址,大家可以去看看,看自己符合哪个场景。

  

     此处有测试主扫消费场景,被扫消费场景,被扫预授权场景。这里测试的时候需要配合你测试的测试人员给你一个测试全量案例的excel表格,注意敲黑板敲黑板敲黑板,不要随便自己生成个二维码或者交易序列号就粘贴上去,要是自己这么随意的话,呵呵。那就有你好受了的。因为测试人员最后会去捞取你的商户号下面的全量测试结果,通没通过一目了然。先给上张图

      

这里是我用自己的商户号测试的时候,测试人员给的全量案例测试完成度的图片,得亏我老老实实测,否则就得被打脸了,至于我图片中为什么还有红色的案例,那是因为测试人员给的excel文档中没有体现,最后自己测一下也就完成了。在此我将excel全量测试案例上张图

下方的银标码和收款方两个分页则是做出的相应说明和测试步骤,玩马虎可是玩不好的,所以老实一点。

在这里我需要说一下通知,不要随便测下就了事,很多通知在本地仿真的时候就没有发,在测标准案例的时候你就需要边测边补,然而全量案例里面很多的通知案例,你也需要边测边补,所以,银联的测试流程还是有道理的,逐步完善我们的代码逻辑。

这里我放几张全量案例通知成功后成功响应的截图。便于以后的参考等等。

其实很多都是通知给你以后,你这边再做相应的业务操作,说实话,就算联调和本地仿真都测试完成后,这边你本地也是有很多漏洞的,离上线我估计还是遥遥无期,慢慢完善吧。加油。

这次对接银联扫码,贵在细心和耐心,因为中间会因为要走商务流程或者其他步骤需要不断地暂停等待,等待的过程还有很多的其他任务穿插其中,等回过头来就已经物是人非谁都不认识谁了,哎,其实做的过程挺心酸。

不过到了最后,终于走到了即将投产内部测试的时候了,想想还是有点小激动的,加油加油,有什么技术需要探讨的可以尽情留言哟。 

加油吧,,天天向上

 

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值