我刚刚开始使用Wiremck,我有一个关于存根的问题。
从文档中可以看出,您可以在映射下使用JSON文件,也可以在Java代码中使用代码stubFor(get)(urlEqualTo(…
)。然而,我发现使用stubFor(get)(urlEqualTo(
)会导致Wiremock控制台中出现“请求不匹配”消息。
这是正确的行为吗?存根需要代码和json文件吗?
谢谢
没必要。我已经尝试了下面的代码,它对我有用:
import static com.github.tomakehurst.wiremock.client.WireMock.aResponse;
import static com.github.tomakehurst.wiremock.client.WireMock.get;
import static com.github.tomakehurst.wiremock.client.WireMock.urlEqualTo;
import com.github.tomakehurst.wiremock.WireMockServer;
public class WireMockTest {
public static void main(String[] args) throws InterruptedException {
WireMockServer wireMockServer1 = new WireMockServer();
wireMockServer1.start();
wireMockServer1.stubFor(get(urlEqualTo("/testWireMock"))
.willReturn(aResponse().withHeader("Content-Type", "text/plain")
.withStatus(200).withBody("Welcome to WireMock!")));
System.out.println("Server started");
Thread.sleep(1000);
wireMockServer1.stop();
}
}
WireMock只能在映射中使用JSON有效负载。听起来你的配置还有其他问题,但我需要更多细节来诊断。
不,wiremock只能与。json文件或仅使用java代码。如果你想的话,你可以把它组合起来。
如果请求不匹配,则url没有正确地存根。如果您使用的是独立进程,那么可以从--verbose开始查找请求不匹配的详细信息。
我的wiremock似乎不适用于自动配置。我在类路径中名为stubs的文件夹中有json文件,我在端口8080上运行了独立的jar。 json文件示例 当我用GET启动请求时- 提前谢谢
我试图将多个存根组合到一个JSON文件中。 我已经准备好阅读这篇文章:加载wiremock存根文件和这篇文章https://github.com/tomakehurst/wiremock/issues/987https://github.com/tomakehurst/wiremock/issues/987 但我还是做不到。 目前,我有以下课程: 在我的文件夹中,我有: 具有不同存根的文件夹 我想
使用Spring Cloud Contract设置多个Wiremock存根的最佳方法是什么?这些存根具有不同的主机/端口,并且都在由单个@Test方法执行的代码中调用?例如,我想测试ServiceA。doSomething(),此方法调用ServiceB。doSomethingElse()和consultclient。getKVValue()。我创建WireMockRestServiceServe
我第一次试用Spring Cloud合同。我试图让我的客户机自动发现合同存根,但即使我的合同在响应中指定了“application/json”的内容类型,我从WireMock获得的内容类型仍然是“application/octet”。我做错了什么? 我的服务中有一个简单的方法,它从endpoint返回这样的模型: 我的合同是这样的: 在我的客户端中,我有一个类,它使用Spring来查询此endpo
我有一个maven项目,它使用log4j2进行日志记录。我想覆盖RootLogger的模式。 这是我的log4j2。属性文件: 这是我的pom。log4j的xml文件: 我这样叫我的记录仪: 我的配置有两个问题。第一个是根记录器不使用我的ConsolePender(警告等以默认格式显示),在记录错误时,我只得到第一行,而不是整个堆栈跟踪)。
我是测试的新手,我似乎没有成功地stub一个函数。我试图切断与数据库的连接,但它一直在联系数据库,而不是使用存根的结果: 这是功能: 这是测试: 我总是收到一个错误“未知用户”,这是正常的,因为用户确实不在数据库中。但是,我想存根“执行单查询”函数,避免它连接到数据库。