摩卡柴解决多项承诺
Mocha chai resolve multiple promises
我正在尝试 运行 对此承诺进行测试,但出现此错误:
"Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure"完成()"is called; if returning to Promise, ensure it resolves. (C:\Users\Ranieri\Documents\Projetos\Node Js\testestest\test\libs\registerUser.test.js)"
我已经增加了超时时间,但还是没有解决问题
我在 Whosebug 上搜索了异步测试,但没有找到任何类似的东西,也没有找到类似的东西
我的测试代码https://github.com/ran-j/teste
已经尝试过:
expect(Promise.resolve( userPromesie.selectUser(rUser) ) ).to.be.null
return expect(Promise.resolve( userPromesie.selectUser(rUser) ) ).to.be.null
userPromesie.selectUser(rUser).then((result) => result.to.be.null
selectUser
returns a Promise
并且您需要等待此问题解决才能对其进行断言。这可以通过两种方式实现:
- 在返回的承诺上使用
then
,在该块中调用 done()
函数。
- 使用
async/await
,您声明您的函数 async
并且您 await
Promise
下面是一个 async/await
方法的例子:
it('should do something with the user', async () => {
const user = await userPromise.selectUser(rUser);
expect(user).to.be.null;
});
我强烈建议阅读有关 Promises 的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
编辑 下面是一个使用 done 方法的例子:
it('should do something with the user', (done) => {
userPromise.selectUser(rUser).then((user) => {
expect(user).to.be.null;
done();
});
});
我正在尝试 运行 对此承诺进行测试,但出现此错误:
"Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure"完成()"is called; if returning to Promise, ensure it resolves. (C:\Users\Ranieri\Documents\Projetos\Node Js\testestest\test\libs\registerUser.test.js)"
我已经增加了超时时间,但还是没有解决问题
我在 Whosebug 上搜索了异步测试,但没有找到任何类似的东西,也没有找到类似的东西
我的测试代码https://github.com/ran-j/teste
已经尝试过:
expect(Promise.resolve( userPromesie.selectUser(rUser) ) ).to.be.null
return expect(Promise.resolve( userPromesie.selectUser(rUser) ) ).to.be.null
userPromesie.selectUser(rUser).then((result) => result.to.be.null
selectUser
returns a Promise
并且您需要等待此问题解决才能对其进行断言。这可以通过两种方式实现:
- 在返回的承诺上使用
then
,在该块中调用done()
函数。 - 使用
async/await
,您声明您的函数async
并且您await
Promise
下面是一个 async/await
方法的例子:
it('should do something with the user', async () => {
const user = await userPromise.selectUser(rUser);
expect(user).to.be.null;
});
我强烈建议阅读有关 Promises 的更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
编辑 下面是一个使用 done 方法的例子:
it('should do something with the user', (done) => {
userPromise.selectUser(rUser).then((user) => {
expect(user).to.be.null;
done();
});
});