【发布时间】:2023-04-03 09:59:01
【问题描述】:
我正在使用 npm 库 jasmine-node 对我的 javascript 代码进行单元测试。据我了解,它使用 Jasmine 1.3。
我的大部分代码都涉及异步 Promise(使用 ES6 内置的 Promise,而不是第 3 方 Promise 库之一)。我已经读到 Jasmine 2 有一个名为 done() 的方法,您可以从您的 promise 的“then”或“catch”调用中调用它。我可以在 Jasmine 1.3 中做什么?有没有办法模拟这个?还是有更好的方法或茉莉节点的不同分支?
看到这个问题: Test if a promise is resolved or rejected with Jasmine in Nodejs
【问题讨论】:
-
据我所知,Jasmine 1.x 没有很好的异步测试支持。如果可能的话,我会迁移到 Jasmine 2.x。出于多种原因,它会更好。另一种可能性,也不是一个好的可能性是使用所有异步代码的模拟和存根,以便它可以在同一个滴答声中同步执行。看来 1.3 确实有异步支持,但是有点乱。 jasmine.github.io/1.3/…
-
我很想迁移到 Jasmine 2,但我喜欢 npm 模块的便利性,它仍然是 1.3。我遇到了一个名为 Jasmine.Async 的模块,它看起来很有前途,可以调用像 Jasmine 2 这样的“done()”方法,但我仍在研究。
-
我认为你错了。 jasmine-core npm 模块是您想要的。 npmjs.com/package/jasmine-core
标签: javascript node.js jasmine promise jasmine-node