Javascript 使用QUnit的非阻塞异步测试

Javascript 使用QUnit的非阻塞异步测试,javascript,qunit,Javascript,Qunit,QUnit函数stop()和start()似乎允许等待异步测试,但在等待期间,整个测试套件将挂起。有没有一种方法可以使用QUnit以非阻塞方式运行异步测试?查看文档,有两个原因,我可以看出它是这样设置的 这样您就不会意外地一次运行两个测试,这可能会与某些内容发生冲突(例如,修改DOM,从而更改彼此的测试结果) 让QUnit知道测试什么时候结束。如果所有的同步测试都结束了,那么它会记录结果,如果在后台仍有异步测试发生,那么您并不希望它这样做 因此,这是一件好事,您可能并不希望异步测试在运行时不阻塞

QUnit函数
stop()
start()
似乎允许等待异步测试,但在等待期间,整个测试套件将挂起。有没有一种方法可以使用QUnit以非阻塞方式运行异步测试?

查看文档,有两个原因,我可以看出它是这样设置的

  • 这样您就不会意外地一次运行两个测试,这可能会与某些内容发生冲突(例如,修改DOM,从而更改彼此的测试结果)
  • 让QUnit知道测试什么时候结束。如果所有的同步测试都结束了,那么它会记录结果,如果在后台仍有异步测试发生,那么您并不希望它这样做
  • 因此,这是一件好事,您可能并不希望异步测试在运行时不阻塞。您可能可以在异步测试开始后立即调用
    start
    ,但请记住,JavaScript实际上是单线程的(尽管有时会出现多线程),因此这可能会导致意外结果,因为您无法保证异步测试何时继续运行。。。在其他测试完成并公布结果之前,可能不会(可能不会)