我搜遍了所有地方,发现这个错误是由于没有正确使用asyncTest
引起的。然而,根据文档,我似乎已经做得很对了。我猜可能是我在某个小细节上遗漏了什么,需要额外的眼睛来看一看...
我正在尝试测试一些代码,它会进行一个ajax请求以获取页面,然后将其加载到一个lightbox中。直到ajax调用完成并可以显示后,lightbox-content
才会出现在DOM中。因此,我只能在我的onComplete回调函数中检查它,这里有我的测试以判断它是否正确加载。
这是我的代码:
asyncTest('mytest', 1, function() {
utils.lightbox.show('/login', {
onComplete: function() {
ok($('#lighbox-content').is(':visible'), 'Lightbox loaded the /login page.');
start();
}
});
});
我遇到了以下错误:
Uncaught Error: assertion outside test context, was at HTMLDivElement.window.utils
有人能看出我哪里错了吗?
lighbox-content
中缺少的t
是一个打字错误吗? - David Harknesson('load'
回调中而不是onComplete,但我认为在底层上都是一样的。你尝试过降级到不同的QUnit版本吗? - Dan