如何测试依赖第三方服务的功能

概要:在电商互联网中,经常会遇到调用第三方服务的功能,比如金融支付、日志拉取、数据分析等服务。

         这些服务在调试的时候,第三方会提供sandbox环境,但这些环境只能用于调试是否正常调用,并不能用于测试异常场景;而在真实的线上环境中,会经常出现网络超时、第三方服务不可用等超异常,以及一些第三方服务正常返回的错误码;而这些场景在平常调用第三方服务的时候并不容易遇到,但在线上一旦遇到又没处理好,就容易造成事故。

          比如接入支付宝支付,支付宝的沙盒环境和线上一样健全,很难出现api文档中的大部分错误码,很难进行测试。

方案设计:

      根据第三方服务的api文档,mock一套api接口,用于测试环境进行测试。

      接口的response则设计成可配置,如把配置参数写入MySQL,接口每次返回的时候从数据库读取数据,根据配置参数进行返回,测试环境的服务全部接到该mock服务,这样就可以测试到任何线上异常和正常场景。

      阿里的开源软件anyproxy可以用于切换mock和正常环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值