作者简介
Peter Sun,携程高级测试经理。
一、引言
这里说的Mock指的是系统测试或者接口测试场景下,模拟被依赖的其他服务接口进行响应返回的工具。测试人员通过服务接口级Mock的手段隔绝真实外部依赖,创造可控、稳定的测试运行环境,以提升问题的查全率和查准率。
然而,随着业务的发展和微服务化的进程,我们系统的结构越发的庞杂,Mock工具的实际效果开始变得差强人意。这里给大家分享我们遇到的挑战以及解决思路。
二、问题的出现
随着业务发展和微服务化进程,系统结构越发庞杂。服务化场景下使用Mock,有两个问题开始浮现出来。
1)工作串扰,启用Mock影响其他应用的测试工作
理想中的场景:
操作注册中心,使依赖指向Mock服务。
现实中的场景:
通过注册中心切换被测应用的依赖指向到Mock服务的动作,同样会影响到环境中其他应用的依赖指向,引发串扰(上图中应用B受到影响)。
PS:有被问及为何不调整被测应用的