问题标签 [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 回答
415 浏览

predicate - 为什么 Mountebank 谓词会导致 200 而不是 500 作为响应?

自学mountebank。我想创建一个模拟端点,以便通过向http://localhost:2525/test?mock-response-code=500发出 POST 命令,响应代码将为 500,消息正文将是一些自定义文本。

但是,当我创建冒名顶替者并运行相关的 curl 命令时,我得到了 200 响应。

createImposter_r500.ejs:

以下是我尝试使用该 URL 时发生的情况:

这是一些调试输出:

(端口与上面的 b/c 不同,它来自不同的运行。)

0 投票
1 回答
311 浏览

mountebank - 在多个存根中使用 Mountebank 复制行为

是否可以在 Mountebank 存根之间共享变量?

这是一个高级示例:

存根 A:

存根 B:

我为存根 B 尝试的复制 _behavior 方法似乎无法识别存根 A 中指定的变量。从文档来看,似乎我无法在这些存根之间使用复制。

0 投票
1 回答
281 浏览

javascript - 如何从 mountebank 响应块中的另一个 js 文件调用函数

我有一个关于 mountebank 响应的装饰的问题。我未能从响应代码块中的另一个 js 文件调用函数。任何人都可以给我一个提示?

我的 js 文件:utils.js

mountebank 中的响应代码是

错误是: {"errors":[{"message":"Converting circular structure to JSON","name":"TypeError","stack":"TypeError: Converting circular structure to JSON\n at JSON.stringify (<anonymous>)\n at responsePromise.then.response (/Users/xinxing.cheng/Documents/app/node_modules/mountebank/src/models/behaviors.js:251:48)\n at _fulfilled (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:854:54)\n at /Users/xinxing.cheng/Documents/app/node_modules/q/q.js:883:30\n at Promise.promise.promiseDispatch (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:816:13)\n at /Users/xinxing.cheng/Documents/app/node_modules/q/q.js:877:14\n at runSingle (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:137:13)\n at flush (/Users/xinxing.cheng/Documents/app/node_modules/q/q.js:125:13)\n at process._tickCallback (internal/process/next_tick.js:61:11)"}]}

0 投票
2 回答
43 浏览

request - 分析 gzip 请求

我正在探索 mountebank 并且有一个案例,我需要分析 gzip 压缩的 json 请求以创建返回适当响应的谓词。我可以解压缩 json 请求并使用 mountebank 分析 json 吗?

0 投票
1 回答
116 浏览

mountebank - mountebank如何将2个冒名顶替者合并到一个文件中

我有 2 个应用程序,每个应用程序都使用相同的 mountebank(docker 映像)。

我维护了 2 个独立的“冒名顶替者”文件,因为我们在不同的机器上运行应用程序。

我想在同一台机器上运行 2 个应用程序,只维护一个 mountebank docker 映像。如何将文件合并为 1?

0 投票
1 回答
215 浏览

c# - MbDotNet Mountebank .Net 客户端抛出无法建立连接,因为目标机器主动拒绝了它

在此处输入图像描述

在此处输入图像描述

尝试使用Mountebank .Net 客户端进行测试项目

HttpRequestException:无法建立连接,因为目标机器主动拒绝它

0 投票
1 回答
780 浏览

mockserver - Mountebank - 如何在 mountebank 的 POST 请求中断言消息正文是 JSON 格式

我想在 mountebank 的 POST 请求中存根并检查消息正文,

如果是 JSON 格式的消息正文。预期响应状态代码 200。

例如

如果是 JSON 格式的消息正文,但 JSON 字符串。预期响应状态代码 400。

例如

0 投票
0 回答
23 浏览

asp.net - docker asp.net 日志配置也启用日志错误

应用程序使用Microsoft.Extensions.Logging

这是在 appsettings.json 中配置的

然后我使用 mountebank 作为配置服务器。在冒名顶替者文件

如何使所有日志也包含错误?

0 投票
1 回答
349 浏览

node.js - Mountebank 管道视频文件流以响应不工作

我试图让 Mountebank 将读取的文件流管道从我的.tsMPEG-2 文件返回到 Mountebank 注入,以便客户端可以接收流数据并播放视频。关于如何读入文件有一个有用的节点实现,我让它读入文件,但现在它似乎被第一个文件.m3u8卡住了。.tsNode 似乎正在将.ts文件作为流读取并将其传送到 response stream.pipe(res)。我不确定这如何转化为 Mountebank。这是我的 Mountbank 代码:

山岸:

我用纯节点实现尝试了这个,它可以工作,但是,当我将它移植到 Mountebank 时,我得到一个控制台日志错误,并出现以下错误:

不确定我在这里缺少什么,Mountebank 不支持流响应吗?我什至尝试.ts使用但 hls.js 读取文件,const data = fs.readFileSync(filepath)但似乎不喜欢这样并得到承诺拒绝。

0 投票
1 回答
423 浏览

predicate - Mountebank 使用了错误的谓词并忽略了 contains 中的值

我尝试了他们的文档,但它非常“基本”,所以希望这里有人能发现我的问题?我有 2 个谓词,一个使用错误的用户,一个使用正确的用户。用户的 base64 是通过 post-body 发送的,但似乎containsMountebank 只是简单地忽略它并选择一个包含另一个包含值的谓词......为什么会这样?

我的要求是dX...2g=

但是 Mountebank 将谓词与 匹配dX...Gln

包含不匹配,并且仍然使用该谓词,即使我的存根确实包含匹配的谓词,但它没有被使用:

我的语法错了吗?它匹配第一个谓词,即使它不包含dXNlcjpmYWxzY2g= It does work using equals,我只是好奇为什么contains不包含。