[英]Test with mocha and chai to see if a promise is resolved or rejected
我编写了一个带有一些参数的函数,并且在函数内部使用了一个类,该类具有一个来自第三方库的函数,该函数返回一个Promise,然后在自己的函数中返回Promise的结果。 喜欢 :
return client.track(data) // client.track is from a 3rd party lib that should return a promise
现在,我想在我的mocha + chai测试文件中测试promise的返回。 我用输入导入此函数,我应该得到结果。 就像是:
const result = await myfunc(x,y) // Should return the result of a promise
现在我要测试在Mocha + Chai中诺言是否已实际解决或被否决,例如使用
chai.expect(...)
我怎样才能做到这一点?
看一下npm软件包chai-as-promised
( https://www.npmjs.com/package/chai-as-promised )。 它是对chai库的扩展,该库提供对Promise的支持。
您可以通过以下方式进行设置
const chai = require("chai")
const chaiAsPromised = require("chai-as-promised")
chai.use(chaiAsPromised)
chai.should()
promiseFunction(args).should.be.rejectedWith(SomeError)
promiseFunction().should.eventually.be.a('array')
查看文档,以更好地了解此插件的功能:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.