【发布时间】:2018-01-08 00:15:01
【问题描述】:
我收到以下错误消息“超时 - 在 jasmine.DEFAULT_TIMEOUT_INTERVAL 指定的超时内未调用异步回调。”最重要的是,我还收到一条错误消息,指出执行了 0 个断言,而预期有 2 个断言。
我已尝试使用 jest.setTimeout(10000) 将超时时间延长至 10 秒,这应该足以执行该代码,但问题仍然存在。
我知道m.employeeGetAll() 有效,因为当我使用浏览器测试我的网络应用程序时,我可以在视图中看到员工列表。
这是我的测试的样子
it('Lists all employees successfully', () => {
expect.assertions(2);
return m.employeeGetAll().then(result => { //m.employeeGetAll() returns a promise
expect(result).toBeDefined();
expect(result.length).toBe(3);
});
});
【问题讨论】:
-
我尝试在
.catch(e => {console.log (Error: ${e}))上方的返回语句中添加额外的代码,以尝试获取一些输出以查看我的承诺是否失败。但是,它最终什么都不做,并继续抛出超时错误。我对为什么永远不会返回承诺感到困惑。 m.employeeGetAll() 中的代码只是对mongoose.model().find({}).exec()的调用,根据 mongoose 的文档,这应该返回一个承诺。
标签: javascript jestjs