问题标签 [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.
java - Wiremock 中的 URL 路径模式匹配
Wiremock 如何将 URL 路径模式与编码的 URL 完全匹配?我是否需要使用已编码的 URL 保存映射?这是我尝试了几个小时但无法正常工作的方法。
在wiremock中映射
我已经尝试过使用编码 URL 的不同变体,例如 /Systems%20XYZ%20(ABC)/2016.10/aaa/bbb/api/ccc/customers/.* 甚至 URL 编码映射中的 ( 和 ) 但我的请求没有'似乎不匹配
我尝试针对wiremock /Systems%20XYZ%20(ABC)/2016.10/aaa/bbb/api/ccc/customers/12345 调用服务的URI
/Systems XYZ (ABC)/2016.10/aaa/bbb/api/ccc/customers/.* 不过,我认为 Postman/browser 会自动对空格进行编码。
我在这里有什么遗漏吗?尝试了许多组合,但似乎没有奏效。
java - Android 测试无法在低于 5 (API 21) NoClassDefFoundError 的设备上运行
我正在尝试为我的项目运行仪器测试。但它们不能在版本低于 5(API 21)的设备(模拟器)上运行。
我一直在努力解决这个问题,但仍然面临着它。我得到以下异常。
我已经尝试过所有类似问题的解决方案。
这是我的项目结构的外观。
以及用于测试的 gradle 依赖项
并BaseTestClass
具有以下结构
这不仅发生在我的项目中,而且发生在Wiremock 示例中,同样的错误。
也许我运行测试不正确,我只需单击一个测试类并选择Run ... Test
.
请帮忙解决这个问题,我不知道出了什么问题。
rest - Wiremock CORS 不工作
我已经有效地使用了wiremock 有一段时间了,我想启用CORS 对模拟API 的访问。
我尝试在响应标头中设置 Access-Control-Allow-Origin: * 和其他标头,但均无济于事。
这是我拥有的映射示例:
我在这里做错了什么导致CORS不起作用?
提前致谢。
javascript - 模拟休息 api 和假域名
我试图创建一个基本的模拟服务器,它允许对 REST 调用进行一些简单的 JSON 响应。我希望一切都在节点上运行,因为这是团队当前的开发环境,所以我想出了 apimocker、jswiremock 等,它们都像 localhost 上的魅力一样工作。太好了,到目前为止。
我现在真正需要的是让所有东西都在我的 localhost 上的假域上运行——> 就像 fiddler/charles 将域调用重定向到对应的 localhost 资源一样。我怎样才能拥有它?- 在节点世界中拥有它也是完美的。
谢谢你的帮助。
unit-testing - Wiremock:同一 URL 和内容的多个响应?
也在这里分享:https ://github.com/tomakehurst/wiremock/issues/625
我正在编写一个集成测试来验证与 REST API 交互的应用程序是否正确处理了不成功的请求。为此,我想模拟一个向 HTTP 端点发出两次 GET 请求的场景。第一次请求不成功,响应状态码为500;第二次,请求成功,响应状态码为 200。
考虑下面的例子:
有没有办法避免第二个 StubMapping 覆盖第一个 - 以确保第一次doSomething()
发出请求,返回状态码为 500 的响应,第二次返回状态码为 200 的不同响应?
spring - Spring Cloud Contract DSL 是否支持 bodyFileName
我正在尝试使用 spring-cloud-contract 框架定义一个合同,该框架对于特定的请求会返回一个大体的响应。这个身体总是一样的。所以我更愿意将这个主体存储在一些静态文件中。生成的 Wiremock 映射将用于bodyFileName
引用具有响应正文内容的静态文件。
java - 如何使用无法通过 Spark 序列化的 3rd 方库
我想在 Spark 中使用 3rd 方库(Wiremock)。但是,我得到以下异常:
有没有一般的方法来处理这个?
java - 如何在 wget 中调试 HTTPS 代理失败?
(这是这个问题的延续,我解决了一个问题并发现了另一个问题)。
我正在通过 WireMock 代理使用 wget 获取 HTTPS 网站。这是我指向演示安全站点的 fetch 命令:
这是我的代理设置:
WireMock 屏幕日志这样说:
结果是:
可以看到,获取失败,自动重试,需要取消才能结束。
我已经尝试--preserve-host-header
过 WireMock 命令(这里的独立文档),但结果是一样的。
我想知道代理是否在内部失败,因为它需要指向有效的 HTTPS 证书存储?也就是说,我希望正在运行的代理会输出一些东西(甚至是错误),但它似乎根本没有处理调用。等效的 HTTP 调用可以正常工作。
我可以做些什么来看看为什么 Wget 失败了?错误消息不是很有帮助,据我所知,我不能让它更详细(wget 中默认情况下详细)。
这种行为在 Alpine 3.4(在 Docker 容器中)和在我的 Ubuntu 14.04 VM 上运行时是相同的。在 WireMock 2.4.1、2.5.0 和 2.5.1 中也是如此。
试用证书
我尝试将浏览器 (Firefox) 的 HTTPS 代理设置切换为指向 WireMock,但由于证书错误,它在我尝试获取的网站上失败。有趣的是,WireMock 不会向标准输出输出任何内容,即使看起来 Firefox 已经联系了远程服务器。
我想知道 Wiremock 中的内置密钥库是否已过时或为空,因此学习如何指定“真正的”证书存储可能是下一个值得尝试的事情。我使用这些说明将浏览器证书文件转换为 JKS 格式,这对 Wget 或 Firefox 没有任何影响。
我注意到我新创建的密钥库是 955 字节,而原始 PEM 证书文件约为 260K,因此很明显并非所有证书都已添加(也许它只是添加了第一个?)。FWIW我使用了这个命令:
正在到达确认代理
我在调用中添加了-verbose
and-verbose:jni
开关java
,以证明在需要 HTTPS 代理时发生了一些事情。当我运行 Wget 命令时,会打印出一篇名副其实的文章,因此我确信 HTTPS 代理正在被命中。Wget 在 HTTP 模式下也能正常获取。
如何记录独立 Jar 文件中发生的事情?
我处于可以盲目尝试各种事情的阶段,我认为我需要从 Java 系统中获取一些情报,以了解它为什么首先失败。我的猜测是 Wiremock 是问题而不是 Wget。
我在 Wiremock 中发现了一个未记录的功能--print-all-network-traffic
,它提供了以下功能:
第二部分重复 wget 重试的频率,但这里仍然没有什么用处。我想知道为什么它失败了。
是否有我可以添加的日志记录参数java -jar
,或者是否有我可以查阅的 Java 系统范围的错误日志?我已经安装了 VisualVM,但各种输出似乎不太相关。我希望我对异常最感兴趣?
java - Wiremock Standalone - 如何使用请求数据操作响应
我试图使用 Wiremock 独立服务器来实现 POST REST 调用的模拟。我面临这样的挑战,假设帖子正文包含一个“名称”字段及其值,则应该在该 POST 调用的响应中返回相同的值。我的 json 文件如下所示:
所以,我需要获取值,即 794363,但使用上述方法无法在响应后正文中获取它。
我也试过这个:
所以我的问题是,即使我使用与请求中的任何数字匹配的正则表达式,如何使用 Wiremock 独立 json 文件在响应中返回相同的数字?谢谢。
spring-mvc - Wiremock 存根像 ECHO 一样工作
我的 JS 应用程序正在使用wiremocks 来模拟后端调用。是否可以创建这样的 Wiremock 定义以创建回显服务(响应的正文 JSON 内容应该与请求的正文 JSON 内容相同)。