我是Wiremock的新手。
我想在基于JUnit的测试中使用它,以编程方式启动模拟服务器并从其他Java进程访问它。 (测试自动化项目和被测应用程序在不同的进程中运行)
@Test
public void test() {
WireMockServer wireMockServer = new WireMockServer(wireMockConfig().bindAddress("localhost").port(8089));
wireMockServer.start();
System.out.println("==>");
RestAssured.get("http://localhost:8089/__admin")
.then().statusCode(200);
wireMockServer.stop();
}
这段代码可以正常工作。启动Wiremock之后,当我获取该URL(http://localhost:8089/__admin)时,得到200。
但是,让我们说被测试的应用程序是在另一个进程中运行的,我想将此Junit测试的wiremock实例提供给它。 Wiremock服务器“似乎”忽略了该请求。
您可以通过在“ System.out.println(” ==>“)”行中放置一个断点并打开指向“ http://localhost:8089/__admin”的浏览器来模拟此情况。您将永远不会得到回应。我觉得请求永远不会到达Wiremock服务器。
这应该可行吗? 你知道我为什么做错了吗? (我也尝试使用@Rule批注)
非常感谢!