2

假设我有以下没有 asyncTest 的代码

setTimeout(function(){
  test ("test1", function(){
    ok(true, "test1 works");
  }); 
}, 2000);

而且,这段代码带有 asynTest

asyncTest ("test1", function(){
  setTimeout(function(){
    ok(true, "test1 works");
    start();
  }, 2000);
}); 

我的问题是这两个有什么区别?谢谢。

4

1 回答 1

3

取自 qUnit文档

添加的异步测试会排队并一个接一个地运行。相当于调用一个普通的 test() 并立即调用 stop()。

setTimeout

在指定延迟后调用函数或执行代码片段。

不同之处在于 seTimeout 与 qUnit 无关,只是在指定的时间后执行指定的代码片段,而 qUnitasyncTest不会在指定的时间后执行,而是放置在最终从中获取的队列中并执行。

我也不认为你真的在比较同类。

于 2012-11-30T22:18:52.757 回答