我收集的 MongoDB 管理实用程序正在增长,是时候进行一些回归测试了。我可以使用内置 Mongo 测试助手中使用的断言类型功能,但我是 RSpec 和 Jasmine 的忠实粉丝,并且宁愿以这种风格编写测试。我不需要自动化,只需能够使用 Jasmine 编写测试,从 shell 运行它们并查看结果。
有没有人让 Jasmine 在 Mongo shell 中工作?如果没有,为了让 Jasmine 在那种环境中快乐,我需要模拟/填充什么提示?
我收集的 MongoDB 管理实用程序正在增长,是时候进行一些回归测试了。我可以使用内置 Mongo 测试助手中使用的断言类型功能,但我是 RSpec 和 Jasmine 的忠实粉丝,并且宁愿以这种风格编写测试。我不需要自动化,只需能够使用 Jasmine 编写测试,从 shell 运行它们并查看结果。
有没有人让 Jasmine 在 Mongo shell 中工作?如果没有,为了让 Jasmine 在那种环境中快乐,我需要模拟/填充什么提示?
这是可行的,但不是直截了当的。您可以使用 Jasmine 的 Node.js 版本,它显示 Jasmine 所依赖的浏览器对象,例如窗口,并伪造它们。
我认为这是太多的工作,并使用了 10gen 内部使用的断言类型函数——它们在 Mongo shell 中可用。
例如,assert
在 Mongo shell 提示符下键入:
> assert
function (b, msg) {
if (assert._debug && msg) {
print("in assert for: " + msg);
}
if (b) {
return;
}
doassert(msg == undefined ? "assert failed" : "assert failed : " + msg);
}