1. WireMock简介
WireMock 是基于 HTTP 的 API 模拟器。
2. 在java接口测试框架中使用
wiremock支持通过筛选:请求方式/路径/入参/header/等多个过滤条件,过滤接口,返回response,response可以是一个文件,也可以是自己定义的任何返回内容。官方文档给了非常多样的使用方案:http://wiremock.org/docs/
以下是简单使用的样例。我们系统是一个广告投放系统,对接了广告投放的供应商,该供应商以下简称为「Bear公司」。客户在开了广告账户,开始投放以后,有去查看投放数据的需求。但是由于广告需要真实投放才会有投放数据,否则接口返回的数据一直都是0。所以访问「Bear」公司的接口是没办法做【查看投放数据接口】的测试的。而通过将原本请求到「Bear」公司的接口,改为请求到wiremock服务,可以返回我们想要的测试数据。
- 使用【花生壳】/【网云穿】等工具开通一个域名指向到本地的端口,我用的是7777,对应wiremock启动的端口号
- 测试项目添加依赖
<dependency>
<groupId>com.github.tomakehurst</groupId>
<artifactId>wiremock-jre8</artifactId>
<version>RELEASE</version>
<scope>compile</scope>
</dep