代码之家  ›  专栏  ›  技术社区  ›  worrynerd

如何使用wiremock模拟服务

  •  0
  • worrynerd  · 技术社区  · 7 年前

    我试图用Wiremock来模拟我的ServiceA。但似乎缺少一些设置。我收到以下错误:

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
    <title>Error 404 Not Found</title>
    </head>
    <body><h2>HTTP ERROR 404</h2>
    <p>Problem accessing /__files/serviceA/endpointA Reason:
    <pre>    Not Found</pre></p><hr><a href="http://eclipse.org/jetty">Powered by Jetty:// 9.4.4.v20170414</a><hr/>
    
    </body>
    </html>
    

    是否有任何分步教程可以解释如何设置服务?

    1 回复  |  直到 7 年前
        1
  •  3
  •   Daniel P.    7 年前

    有几种不同的方式:

    1. java -jar wiremock-standalone-2.8.0.jar (参见 http://wiremock.org/docs/running-standalone/ )
    2. 创建具有以下依赖关系的简单maven项目:

      <dependency>
          <groupId>com.github.tomakehurst</groupId>
          <artifactId>wiremock</artifactId>
          <version>2.8.0</version>
      </dependency>
      

      private static final WireMockServer server = new WireMockServer(options().port(8080));
      
      public static void main(String[] args) {
          server.stubFor(post(urlEqualTo("/localsave")).willReturn(aResponse().withStatus(HttpStatus.SC_OK)));
          server.start();
          //do some stuff
      }
      
    3. 使用JUnit规则:

      @Rule
      public WireMockRule wireMockRule = new WireMockRule(options().port(8888).httpsPort(8889));
      

    您可以在此处找到所有信息: http://wiremock.org/docs/