错误:超时-在5000毫秒内未调用异步回调(由jasmine.DEFAULT_TIMEOUT_INTERVAL设置)

时间:2019-09-13 11:51:55

标签: javascript asynchronous jasmine

我正在使用茉莉花测试我的异步功能。我收到以下错误消息。

  

错误:超时-异步回调未在5000毫秒内调用(由设置   jasmine.DEFAULT_TIMEOUT_INTERVAL)

我试图打印通过功能解析的数据。它正在控制台上打印,在那之后我出现了以上错误。

funtion test(){
    return new Promise(funtion(resolve,reject){
        resolve({id:1})
    })
}

describe("test function",funtion(){
    it("testing",test().then(function(data,err){
        console.log("resolved Data = ",data)
        expect(data).toEqual({id:1}))
    }))
})

以上功能不是我的确切功能。这只是一个例子。 我正在获得CMD中数据的价值,然后我得到了

  

错误:超时-异步回调未在5000毫秒内调用(由设置   jasmine.DEFAULT_TIMEOUT_INTERVAL)

如果我的数据已经解决,那么为什么会出现此错误?

1 个答案:

答案 0 :(得分:1)

问题是您需要确保根据茉莉花标准完成测试。最简单的方法是使用done参数。就像这样:

describe("test function",funtion(){
    it("testing",done => {
        test().then(function(data,err){
            console.log("resolved Data = ",data)
            expect(data).toEqual({id:1}))
            done();
        }))
    })
})

您只需要确保测试完成时调用done()