- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试测试 openid 提供程序类。 openid 消费者类正在发出 http 请求。我正在使用 wiremock 模拟对此请求的响应。我正在尝试模拟有效的 openid 响应。但是,有效响应取决于请求参数。使用 wiremock,我可以设置一个模拟请求,其中响应的主体取决于请求参数吗?
最佳答案
这是可能的,您只需要使用 ResponseTansformer。在下面的示例代码中,responseDefinition 由下面给出的 stub 确定。在这里,我通过简单地将正文字节返回给调用者来模拟编码服务。尽管在转换器中我可以根据请求的内容自由返回任何我喜欢的东西。
int port = 8080;
WireMockServer wireMockServer = new WireMockServer(new WireMockConfiguration().port(port).extensions(new ResponseTransformer() {
@Override
public ResponseDefinition transform(Request request, ResponseDefinition responseDefinition, FileSource files) {
return new ResponseDefinitionBuilder().like(responseDefinition)
.withBody(request.getBodyAsString().getBytes())
.build();
}
@Override
public String name() {
return "request body returning request transformer";
}
}));
wireMockServer.start();
WireMock.configureFor("localhost", port);
stubFor(post(urlEqualTo("/encode"))
.willReturn(aResponse()
.withHeader("Content-Type", "application/octet-stream")
.withStatus(200)));
stubFor(post(urlEqualTo("/decode"))
.willReturn(aResponse()
.withHeader("Content-Type", "application/octet-stream")
.withStatus(200)));
关于java - 使用 Wiremock,我可以返回一个依赖于发布请求的主体吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18581520/
我想使用 HTTP 客户端测试我们的应用大量的数据。是否可以创建无限长或几千兆字节的长度使用 WireMock 输出而不分配字节数组或具有该大小的字符串? 据我所知ResponseDefinition
我正在尝试使用以下 stub 命中 WireMock,但似乎查询参数没有匹配。这是回应: Request
我正在尝试测试我的代码,该代码具有对 HTTP 服务器的底层 GET 调用。 我正在尝试使用 WireMock ,并基于“入门”我有以下代码: @Rule public WireMockRule wi
我是 wiremock 的新手,想创建永久的自定义 stub 。我能够通过运行独立的 wiremock 实例并使用 curl 命令发送发布请求来创建 stub 来创建 stub 。这工作正常,但只要我
我正在使用 wiremock-jre8-standalone-2.27.0 jar 来模拟 API。我的映射 json 看起来像: { "request": { "url": "/sam
我已经实现了一个带有示例 REST/HTTP 请求模拟的基本 WireMock。服务器代码实现如下。 使用此代码,当我从 Postman 发出 GET 请求(即 GET http://127.0.0.
我使用 asp.net core 2.0 + wiremock.net 开发了一个项目。目前,我只能处理“__admin/mappings”目录下的 json 文件。但是,我有几个 json 文件,因
我正在尝试使用 WireMock 创建动态模拟。我有一种情况,如果我指定 URL 如下: http://localhost:8089/api/account/abc@abc.com 那么我应该收到如下
我在wiremock中定义了一个https stub ,如下所示:- public class HttpsMockMain { public static void main(String[]
假设我有端点:/url?number="321"&name="TEST",但是当我们匹配一个与请求匹配的请求时,我们要如何忽略查询参数的顺序(忽略查询参数的顺序) 在这种情况下,如果在查询参数标签中传
我正在使用 wiremock 来模拟 http 服务器,我正在返回来自 json 文件的响应(使用 withBodyFile 方法)。 现在我想根据请求参数选择并返回响应json文件。对于下面的示例,
我看到有关于在以独立方式运行wiremock时启用详细日志记录的说明,网址为http://wiremock.org/running-standalone.html (请参阅--verbose)。 从
我有一个运行良好的模拟 stubFor(WireMock.get("/varela/offerszones?channel=123").willReturn(aResponse()
我尝试使用以下 json,但 wiremock 无法识别我的更改。我看了wiremock的文档,看到他们说:JSON相等匹配是基于JsonUnit的,因此支持占位符。我也尝试使用 JDK 8 和 JD
我正在尝试使用以下要求比较Soap UI和Wiremock的功能(对于我的项目中的大多数情况来说,这是很现实的)。 目标是为货币价格服务创建一个模拟。要求: 在以下位置可访问 mytesthost/p
在特定数量的先前响应之后,是否可以配置 wiremock 以在相同的 URL 和相同的请求上发送不同的响应? For example: 1st request -> 503 response 2nd
在大多数集成测试中,我使用 spring-boot-test(2.1.9.RELEASE) 和 spring-cloud-contract-wiremock(2.0.2.RELEASE)。该测试基于以
我想为以下 e2e 场景添加一个测试: 我的应用程序正在通过内部代理服务器向外部服务发出 Web 请求,代理服务器操作请求正文,将请求转发到目标主机并返回返回的响应。 比如说 我向 external.
在旧版本的 Wiremock 中,我们可以将 te queryString 附加到匹配的 url,如下所示: wireMockRule.stubFor(get(urlPathEqualTo("/res
我正在尝试使用 Wiremock 2.24.1 根据请求路径动态返回不同的主体文件,如果在本地找不到,我想调用外部资源(作为代理)。 我正在使用这个映射文件: { "priority": 1,
我是一名优秀的程序员,十分优秀!