gpt4 book ai didi

javascript - Jasmine 2.0 : refactoring out 1. 3的runs()和waitsFor()

转载 作者:行者123 更新时间:2023-12-03 03:00:18 27 4
gpt4 key购买 nike

最近发布的 Jasmine 2.0 删除了 waits functions以及 Async Jasmine 1.3 中的 runs()

我有旧的 1.3 测试,我想转换到新样式。

对于等待,在大多数情况下,您似乎可以仔细编写 beforeEach()afterEach() 以获得相同的效果。

重现仅按顺序执行所包含函数的 runs() 的最佳方法是什么?

我的第一次尝试:

runs(function() {
expect(true).toBe(true);
}

变成了

(function() {
expect(true).toBe(true);
})()

最佳答案

可以在 it() block 中使用 setTimeout。

it("is asynchronous", function(done) {
var isItDone = false;
$.ajax('/some/url').success(function() { isItDone = true; });

setTimeout(function(){
expect(isItDone).toBeTrue();
done(); // call this to finish off the it block
}, 500);

});

但是,我发现这极大地减慢了我的测试套件的速度,因此我创建了自己的扩展,它重新创建了 waitsFor 提供的轮询功能。

https://gist.github.com/abreckner/110e28897d42126a3bb9

关于javascript - Jasmine 2.0 : refactoring out 1. 3的runs()和waitsFor(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20963038/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com