问题标签 [wiremock-record]
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.
http - 微服务上下文中的 WireMock 记录 - 一个客户端调用多个服务器
在我的项目中,有 100 多个微服务。就我而言,我想独立于任何其他外部服务来测试我的微服务。
我的微服务“A”的场景 -主要数字处理微服务,我的目标是独立于其他外部服务进行测试。在我的场景中,演员请求“A”执行一个动作,然后“A”从“B”“D”“C”获取一些数据并执行复杂的逻辑并将响应返回给演员
为了独立测试 A,我打算使用Wiremock记录从 A到其他微服务(B、C、D)的各种请求-响应
正如我从 Wiremock 文档中了解到的那样,要使用 Wiremock 的记录功能,我们必须无法--proxy-all针对客户端定位服务,然后请求主机:Wiremock 的端口,这反过来又转发到实际服务和记录请求/响应。
但就我而言,这是不可能的,因为我身处微服务世界。服务“B”、“C”、“D”在随机端口上运行,在我的实际场景中,A 从服务注册表获取 B 的地址,所以即使我手动启动许多带有代理目标服务的 Wiremock,我仍然无法重现对wiremock的请求(反过来又被代理以尊重服务)。
那么如何记录我想要的请求和响应(从目标微服务“A”到“B”、“C”和“D”。
wiremock - Wiremock 服务器在调用时返回 HTTP ERROR 500
我正在使用wireMock,我得到了500 Internal Server Error的一致响应。
我正在使用以下代码创建模拟服务器,wiremock 版本:2.24.0
当我尝试使用 curl 命令调用我的服务器时出现错误
curl http://dlpune.local:9320/
请帮助解决上述情况。
wiremock - 我们可以在 Wiremock 中自定义映射文件名吗?
我正在使用 JAVA DSL 通过 Wiremock 录制应用程序,我们可以选择自定义映射文件名吗?而不是获取从wiremock生成的文件名..
示例:searchpanel_arrivalairport_th-72f9b8b7-076f-4102-b6a8-aa38710fde1b.json (使用 java 生成形式的wiremock)我期望上面的文件名具有我想要的命名约定,例如
seacrpanel_airport_LGW.json
java - 同时进行Wiremock记录和存根
我有一个服务(A)调用另一个服务(B),我正在用 Wiremock 模拟它。我想做的是做一个测试:
- 如果我处于录音模式,请记录呼叫 A -> B 并将它们放入文件中
- 如果我处于非录音模式,则捕获呼叫 A -> B 并将它们与预先录制的模拟进行比较(这就像回归测试)
我当前的结构是 BMockRule.java
我的测试里面看起来像
问题是,当我进行录制时,存根不起作用。有没有一种简单的方法可以做到这一点。
谢谢 :)
wiremock - 使用单个端口创建单个 WireMockServer 对象
我对 Wire mock 和 gradle 很陌生。我计划通过使用单个 WireMockServer 对象和使用 8081 端口及其在 gradle 任务中可配置来进行设置。
构建.gradle
测试类:
现在的目标是我只启动一次 8081 服务器并运行所有测试用例并最后关闭
有可能吗?能否请提供 springboot-wiremock gradle 自定义任务?
mapping - 如何仅根据其 URL 验证来自 Wiremock 部署到远程主机的请求?
我已经使用 Spring Boot 以编程方式实现了一个自定义 Wiremock 服务器,并且该服务部署并运行在远程主机上。访问此 Wiremock 服务器的唯一方法是 DevOps 提供的 URL。假设testWiremockHost.com 所有映射都工作正常,Wiremock 响应正确。
但我确实有几个问题:
1) 当我在 testWiremockHost.com/__admin 上尝试 GET 请求时,服务器没有响应
2) 我的目标是验证在触发另一个服务后发送到此 Wiremock 的请求,因此我还需要找到一种方法在我的测试中正确定义此远程 Wiremock 的实例,以跟踪传入的请求。以前,当我尝试验证来自 'localhost' Wiremock 服务器的请求时,一切都很好,但不幸的是,我不能对远程服务器做同样的事情。
我尝试过的最新代码如下:
结果我收到以下错误:
我将不胜感激任何帮助,在此先感谢!
java - 如何配置 WireMock 以将 StubMappings 加载/保存到 AWS S3?
我正在尝试使用 WireMock 的记录和播放功能,但不同之处在于我希望将所有存根映射保存到 S3,然后将其加载回来。我编写了一个实现 MappingsSource 的自定义 S3MappingSource:
然后我像这样启动 Wiremock 服务器:
尽管映射被存储在 S3 中,并且正在被回读,并且现在一切正常,但我认为这不是正确的方法。推荐的正确方法是什么?
wiremock - 具有模拟延迟的 Wiremock 快照
线模版:2.27.0
使用 Wiremock 运行负载测试,工作流程如下。
一种。启用代理并执行单次负载测试(热身阶段)。
湾。生成快照
C。然后修改映射(通过 REST API 获取/设置),并用delayDistribution
d。运行后续负载测试运行(实际运行,有助于最终统计数据)
有一个更好的方法吗?例如,有没有办法用 DelayCharacteristics 装饰现有的映射。我查看了扩展,但找不到更优雅的方法。
java - Wiremock-独立 jar --port 选项不起作用
我是wiremock的新手,我正在尝试用它来记录java应用程序的请求和响应。我为此使用独立的wiremock jar。下面是我正在使用的命令
现在 http://server1:33898 成功并且页面打开成功,但是由于某种原因 http://server1:9523 没有加载页面。我想这意味着没有创建wiremock服务器。
我做了 netstat -tuplen 来检查端口是否在 server1 上处于侦听状态。我注意到它在听。
尽管在上面的 java -jar 代码片段中提供了 --port 选项,为什么没有在端口 9523 和 http://server1:9523 上创建wiremock 服务器?
mocking - 动态wiremock捕获过滤器参数并返回响应
我正在尝试使用 WireMock 创建动态模拟。我有一种情况,如果我指定 URL
对于这种要求
我可以使用什么所以响应将过滤掉 id 和角色并放入响应中。
我正在使用独立的wiremock jar 2.27.2 来创建wiremock-server。