问题标签 [wiremock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
862 浏览

web-services - WireMock 在录制时会播放吗?

我最近一直在玩 WireMock (Standalone),觉得它很棒。今天我注意到行为,据我所见,表明 WireMock 在录制模式下播放已经保存的响应。

我想我可能弄错了,因为知道这一点非常重要,但我在文档中看不到它,除了这个:

笔记

记录器将忽略任何与它已经捕获的请求匹配的请求。

目前尚不清楚这是否意味着:

  1. 请求将被路由到 3rd 方服务,并返回实时响应。或者,
  2. 保存的响应将被返回,在这种情况下不会打扰第 3 方服务。

我希望是后者。这基本上意味着在小型应用程序中,可能永远不需要播放。

谁能帮我确认一下?

0 投票
4 回答
23727 浏览

json - 使用wiremock匹配JsonPath中的数据

我正在尝试为我的登录过程创建模拟。我使用带有几个字段和登录对象(带有登录名、密码等)的 POST 方法。为此,我正在使用 JsonPath。下面的代码:

我正在检查 clientVersion 因为它类似于示例。

我的问题是,给定 POST JSON:

我收到 404。但是,当我更改

正常

一切正常。

那么-如果给定字段等于某个值,如何使用matchesJsonPath检查wiremock内部?在我的情况下,如何将其应用于根字段之类的方法?当我们这样做时 - 我在检查值是否不为空时遇到了类似的问题。我试图应用正则表达式等 - 没有运气。

0 投票
1 回答
1625 浏览

java - WireMock 存根创建失败:期望 201 但得到 200

我是 WireMock 的新手,并试图让我的第一个单元测试使用它。现在,按照wiremock.org 上的文档,我写了这个

我希望这会向 /some/thing 发出任何 http 请求以被捕获。在给定的调用中,它给了我以下异常:

我错过了什么?创建存根有什么问题?

0 投票
4 回答
18118 浏览

java - 是否可以使用wiremock工具模拟连接超时?

我知道它可以SocketTimeoutException通过使用来模拟withFixedDelay,但是呢ConnectionTimeoutException

0 投票
1 回答
344 浏览

scala - Play 升级到 2.3.8 未能通过使用 wiremock 的 scala 测试

我最近使用 Slick 等将我的 Play Scala 项目更新为 2.3.8。

从那时起,我使用 Wiremock 的单元测试不断失败。

错误看起来:

如果有任何帮助/建议,将不胜感激?

0 投票
2 回答
2514 浏览

android - Unable to Setup Wiremock on Android Project with Proguard (Duplicate Zip Entry error)

I've been reading all posts now and at this time I'm really struggling.

I was trying to use WireMock in my android project to help on testing. However, Proguard has always something to say.

My gradle dependencies file is this:

My testing proguard-file is this:

My main project dependencies:

My test project dependencies:

My error output:

Thank you for all. Any help will be very welcome!

0 投票
2 回答
709 浏览

unit-testing - WSO2 ESB 单元测试

我们在 WSO2 ESB 中开发了一个代理服务,它是一个编排器,并调用聚合响应的多个服务。

我如何测试代理流程的每个步骤(或中介),以及系统如何对每种可能的情况做出反应(例如成功、失败、响应时间慢...)?

我们试图模拟代理调用的每个服务的行为(使用Wiremock),对于每个步骤,但我们无法动态更改每个调用指向的端点(或端口)。

例子:

  • 真正的服务正在监听8280端口
  • Wiremock 正在监听端口8281
  • 我们需要动态改变Proxy 中的端点,让它调用Wiremock服务 (8281) 而不是真正的 (8280)

如果有其他测试方法,我很乐意探索不同的解决方案......

0 投票
1 回答
7698 浏览

json - 使用基于属性值的 JSONPath 在 Wiremock 中返回 json

我正在尝试使用 Wiremock 进行存根,以根据发布请求中发送的正文提供响应。

例如,发送这个 json 时:

我想发送 pauldata.json

这是我的请求/响应 json 下面:

但是,这会导致错误:

JSON 路径表达式 '$.person[?(@.firstName=='paul')]' 无法匹配文档,因为错误 'net.minidev.json.JSONObject cannot be cast to java.util.List

此表达式: $.person[?(@.firstName=='paul')] 将 json 与http://jsonpath.herokuapp.com/上的 Jayway 实现匹配,但与 Wiremock 使用的 Goessner 实现不匹配。

我注意到,如果我只是在 jayway 中执行 $.person.firstName,它会返回“paul”,但是当我在 Goessner 中执行相同的操作时,我会得到 [“paul”]。

如何使用 JSONPath 的 Goessner 实现匹配键的值,以便可以根据数据中键的值返回自定义 json?

0 投票
1 回答
5045 浏览

java - WireMock - 在 POST 存根正常工作时,使用正文不工作的存根 GET

在尝试测试客户端类时,POST 调用存根可以正常工作,而 GET 则不能。我在这里做错了什么/没有正确理解?

客户端代码(POST):

使用存根(POST):

工作正常(httpResponse 将有 200 OK)。

GET使用时,它不会存根 api 调用(httpResponse 将 404 Not found)。

0 投票
3 回答
1846 浏览

java - 独立的 Wiremock + 使用的端口

我是wiremock的新手,我正在尝试用它来记录我负责集成测试的java应用程序的请求和响应。

我知道我的命令将类似于: java -jar wiremock-1.57-standalone.jar --port 9080 -proxy-all="http://search.twitter.com" --record-mappings --verbose

端口 9080 是我的 java 应用程序运行的端口,并通过它发送 api 流量。

但是,由于 java.net.BindException: Address already in use,上述命令不起作用。这对我来说很有意义,因为 java 应用程序和 Wiremock 都在尝试使用相同的端口。

因此,我将如何使用 Wiremock 记录 api 调用?

谢谢你。