问题标签 [mountebank]

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 回答
111 浏览

mountebank - 有没有办法在 Mountbank 中传递路径参数

我试图使用 Mountebank 传递路径参数。

下面正在工作,但路径是静态的,没有任何参数。

如果我需要做参数GET /accounts/[account-no]在哪里account-no

0 投票
1 回答
337 浏览

mountebank - 在不命中目标应用程序的情况下动态更改 mountebank imposter 中保存的响应

我在性能测试中使用 mountebank 进行服务虚拟化。因此,当我第一次使用请求参数(例如 flightNo=513)点击 mountebank 服务 url 时,它使用 proxyOnce 模式进入目标应用程序并将响应保存在特定端口的冒名顶替者中,但第二次当我更改 flightNo 所以我不想要命中目标应用程序,但我想根据给定的航班号操作保存的响应。我怎么能在 mountebank 做到这一点?请帮忙。

0 投票
1 回答
116 浏览

javascript - Java 脚本正则表达式接受多个值,包括 Mountebank 谓词中的空值

我试图接受多个值,包括 Mountebank 谓词中的空值。

根据下面的查询参数,我想同时接受 false 和空值。

在下面尝试过,它既不接受isValid=false也不接受isValid=

我尝试了以下选项以及按照

0 投票
1 回答
212 浏览

xml - 是否可以在处理之前更改 mountebank 中的请求正文?如果是,那么我们该怎么做呢?

我正在使用 mountebank 进行服务虚拟化。我收到来自 mountebank 中测试应用程序的请求,其中包含作为请求正文的 soap xml。在那个soap xml中,有一个标签 wsa:Tohttp://[ip]:[port]/</wsa:To> 但我需要在它被mountebank处理之前用目标应用程序端点更改这个值。请帮助我怎样才能做到这一点?

0 投票
1 回答
445 浏览

testing - 使用 CORS 的 mountebank 谓词代理

我设置了一个 mountebank 谓词来代理下游服务器。来自服务器的响应没有Access-Control-Allow-Origin设置为*。我绝对可以记录来自下游服务器的响应,然后启动一个新的 mountebank 实例,并allowCORS选择允许我的浏览器从这个测试中消费而不会出现 CORS 问题。

我想知道是否可以直接使用代理谓词来修改来自下游服务器的响应头以添加"Access-Control-Allow-Origin": "*",. 这样我只能使用一个带有proxyOnce选项的 mountebank 实例,并允许我的浏览器与这个测试替身进行交互。对于我的用例,这有助于我从 arecord and replay转移到仅使用proxy到下游。

我试图也存根该OPTIONS方法,但它不起作用。

有什么建议么?

0 投票
1 回答
250 浏览

mountebank - Mountebank 谓词不检查标头

我有下面的代码,看起来它没有将标题作为谓词检查。

奇怪的是,当我将@值作为标头传递时,X-CLIENT-ID它会验证并将消息显示为没有谓词匹配。因为它不是正则表达式的一部分。

0 投票
0 回答
91 浏览

visual-studio-code - vscode 中 Mountebank EJS 的语法高亮

是否有任何语法高亮和格式化程序可以在 vs-code 中与 Mountebank 一起使用。

我对 .ejs 了解不多,但所有结果都建议对 .ejs 文件使用 HTML 格式化程序,这根本不适用于 Mountebank。

我认为是因为 Mountebank ejs 文件似乎以类似 json 的格式开头,JSON 中包含一些特殊的 ejs 标签,而不是我在其他示例中看到的 HTML。

到目前为止我已经尝试过:

EJS 语言支持

visual-studio-code-isnt-recognising-ejs

没有任何效果。还是应该换其他编辑?什么是 ejs 的最佳编辑器,Mountebank?

0 投票
0 回答
16 浏览

mountebank - 如何在 Mountebank 中使用 predicateGenerator 和正则表达式

我正在使用 Mountebank 进行服务虚拟化,以便对我的代码段进行性能测试,而无需担心后端服务。我要实现的用例是为 MB 设置 proxyOnce 模式。我想使用 predicateGenerators 以便我可以在路径上使用正则表达式。但是当我这样做的时候,请参考这里的代码,MB在第一次调用时生成的存根看起来很奇怪—— 点击这里查看代码

这是 MB 在第一次调用后创建存根的方式 - 单击此处查看创建的存根

有人可以帮助我了解正则表达式如何与 MB 中的 predicateGenerators 一起工作吗?

谢谢!

0 投票
0 回答
103 浏览

docker - 使用 docker compose 和 mountebank 模拟外部调用

我想从代码中模拟对远程 API 的调用。为了论证起见,URL 的域段是https://some.external.api/。不幸的是,没有办法通过环境变量来设置它,它是在第三方库中硬编码的。

我的计划是创建一个 mountebank 服务器来模拟 API 的返回,并将其公开为具有 some.external.api 网络别名的服务,以便来自我被测服务的调用路由到 mountebank 服务器。

提议的 docker-compose 文件看起来像这样

使用此设置是否将从 a_service 中对https://some.external.api/进行的调用发送到 mountebank 服务器?

0 投票
1 回答
44 浏览

npm - 使用 nodemon 进行 mounteback 的 NPM 命令

我正在使用 mountebank JS 进行模拟,手动重新启动它很痛苦。我已经在我的 package.json 中安装了 nodemon 并且能够运行它,但是当我编辑和保存 ejs 文件时它不会重新启动。这是我通过 nodemon 运行 mountebank 的命令: