Http mock入门-看这一篇文章就够了

一、什么是wire mock

什么是mock技术

对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法,这个对象可以是一个方法,可以是一个接口,我们这里介绍的mock都是接口

Wire-mock是什么?

Wire mock的光网:http://wiremock.org

Mock http apis

二、为什么要使用mock

使用真实环境问题点

1、难于创建(比如复杂的测试环境)

2、不易获取(复杂的获取流程)

3、不稳定(几率性的获取失败)

4、前后端分离(前后依赖是并行任务)


三、什么时间什么地方要使用mock

1、难于创建(比如复杂的测试环境)

2、不易获取(复杂的获取流程)

3、不稳定(几率性的获取失败)

4、前后端分离(前后依赖是并行任务)


四、怎么使用mock

一、在代码中直接饮用

Maven工程添加依赖


Http mock入门-看这一篇文章就够了_第1张图片
maven配置

   com.github.tomakehurst

   wiremock

   2.12.0

或者

    com.github.tomakehurst

    wiremock-standalone

    2.12.0

指定启动端口:


图1

配置server的response:url,accept,返回码,content-type,body等


Http mock入门-看这一篇文章就够了_第2张图片
图2

打桩

Wire mock的打桩分为Java代码和json api两种方式

1、Java代码的方式,已经实现过了不再累述


Http mock入门-看这一篇文章就够了_第3张图片
图3

2、json api的方式

在工程/test/resources/mappings目录下创建*.json文件


Http mock入门-看这一篇文章就够了_第4张图片
图4


Http mock入门-看这一篇文章就够了_第5张图片
图5

直接http请求json中的url路径即可:


图6


Http mock入门-看这一篇文章就够了_第6张图片
图7

Verify功能用来验证请求的格式是否正确


图8

二、作为服务独立运行

运行

java -jar wiremock-standalone-2.12.0.jar –port 9090 –verbose

详细命令请查看

http://wiremock.org/docs/running-standalone/

配置

在生成的__files和mappings的文件夹下,mappings文件夹下*.json用作request匹配

Response响应分直接body返回和指定file返回

1、直接body返回

2、指定json文件返回(非json格式文件也可以)

你可能感兴趣的:(Http mock入门-看这一篇文章就够了)