WireMock.net正在存根WCF服务调用



我有一个WCF服务,运行在http://localhost:8072/MyWCFService并且需要为集成测试设置一个wiremock存根。我有以下代码作为初始尝试:

var server = WireMockServer.Start();
server
.Given(
Request.Create().WithPath("http://localhost:8072/").UsingPost()
)
.RespondWith(
Response.Create()
.WithStatusCode(200)
.WithHeader("Content-Type", "text/xml")
.WithBody("Hello world!")
);

但这失败了(调用代码刚好超时(。Wiremock能够模拟WCF SOAP调用吗?如果是,需要什么设置?我猜这比我上面天真的尝试更复杂。

使用WireMock模拟服务。Net需要以下步骤:

  1. 启动WireMock。Net服务器使用CCD_ 1
  2. 获取此WireMock所在的URL。Net服务器使用var url = server.Urls[0];运行
  3. 更改您(客户端(的代码以使用该url而不是真实的url
  4. 现在,当您的真实客户端代码执行WCF调用时,该调用将发送到WireMock。Net,如果此请求匹配,则返回您的响应

另一件事,在您的示例中,您不需要像"http://localhost:8072/"这样的路径。在您的情况下,您可以跳过WithPath或制作WireMock。Net在类似/ThisIsMyApi的路径上反应

有关更多详细信息,请参阅WIKI。

最新更新