Mock的价值与实战

一、Mock的价值与意义

1.1 简介

  • 测试过程中,对于一些不容易构造或获取的对象,用一个虚拟的对象来替代它,达到相同的效果,这个虚拟的对象即Mock。

  • 当做测试时,如果后端某些接口还不成熟,所依赖的接口不稳定,所依赖的接口为第三方接口,或者构造依赖的接口数据太复杂等等这些问题,可以用Mock的方式,先虚拟接口返回来代替真正的接口,从而提高工作效率。

1.2 Mock测试的场景

1.3 Mock的价值与意义

  • 不依赖第三方数据
  • 节省工作量
  • 节省联调

二、Mock核心要素

  • 匹配规则:

    • 确定要对哪个接口,或者哪些接口进行修改;
    • 需要对接口中的哪些数据做修改。
  • 模拟响应:

    • 当接口符合了指定的匹配规则之后,就要把对应匹配上的内容做篡改;
    • 具体要篡改成什么样子,需要根据设计的测试用例来确定。比如,要验证的是前端内容展示的场景,那根据等价类、边界值,就需要设计很多不同的展示内容,如超长展示、不同数据类型等。

三、Mock实战

3.1 Rewrite

3.1.1 Rewrite原理

3.1.2 实战

  • 场景:

    • 修改雪球行情页面的股票名称;
    • 修改雪球行情页面的股票价格。
  • 设置方法:

      1. Tools->Rewrite
      1. 勾选Enable Rewrite
      1. 点击下方Add新建一个重写规则
      1. 在右侧编辑重写规则
      1. 点击OK生效

3.2 Map Local

3.2.1 Map Local原理

3.2.2 实战

  • 场景:

    • 修改雪球行情页面的股票名称;
    • 修改雪球行情页面的股票价格。
  • 设置方法:

      1. 准备本地接口响应数据
      1. 配置Map Local
      1. 选择要进行Map Local的接口
      1. 鼠标右键->选择Map Local选项,进入设置页面
      1. Map Form填写接口的信息
      1. 修改Map Local配置:Tools->Map Local

3.3 Map Remote

3.3.1 Map Remote原理

3.3.2 实战