所有
我对Jasmine测试很陌生,我想知道异步测试的一个问题是:
有人可以简单解释一下Jasmine知道里面有一个done()函数调用并等待完成吗?
例如,如果我在beforeEach中添加了一些异步调用:
var flag = false;
beforeEach(function(done){
setTimeout(function(){
// some task here
flag = true;
done();
}, 3000)
})
it("Should be true if the async call has completed", function () {
expect(flag).toEqual(true);
});
Jasmine如何知道应该让it
规范测试等待?
谢谢
答案 0 :(得分:1)
Jasmine知道这一点,因为你提供了done参数。如果您没有异步调用,则应省略done参数。
beforeEach(function(){
nonAsyncMethod();
})