WireMock搭建模拟后台

诞生场景

为了让前后端开发能并行,需要再后端还未开发完毕前,前端也能够通过模拟的响应进行开发。我们只需要有一个模拟的url返回的数据是和将来后端开发完毕后响应的数据结构一致即可。

  1. 官网下载WireMock的jar包并启动
    进入官网WireMock官网

    操作步骤

  2. 编写java代码,调用WireMock服务器提供的接口去设置模拟响应规则及内容

public class MockServer {
    public static void main(String[] args) throws IOException {
        WireMock.configureFor(8062);
        WireMock.removeAllMappings();
        mock("/order/1", "01");

    }

    private static void mock(String url, String fileName) throws IOException {
        ClassPathResource fileSource = new ClassPathResource("/mock/response/"+fileName + ".txt");
        String content = FileUtils.readFileToString(fileSource.getFile(), "utf-8");
        WireMock.stubFor(get(WireMock.urlPathEqualTo(url))
                .willReturn(aResponse().withBody(content)
                        .withStatus(200)
                ));
    }
}

上面代码对应的模拟响应数据存放在classpath:mock/response文件夹下的xxx.txt文件。
当运行了该main方法后,服务器接收到请求后,我们去往该WireMock服务器端口发送请求时,就能返回我们的模拟数据了。

如何理解WireMock?

说白了,就是一个web服务。启动了该web服务后, 我们通过jar包提供的类,编写规则方便我们往该web服务去提交我们想要模拟的响应规则。

后话

上面只是最简单的示例, 还有各种更复杂,更加强的定制化功能。可到官网去学习,研究。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容