assert.async() 永不失败

assert.async() never fails

我是 OpenUI5/QUnit 测试的新手。抱歉新手问题。

我在我的 OpenUI5 项目中添加了一个非常基本的异步 QUnit 测试:

QUnit.test( "Test async", function( assert ) {
    var done = assert.async();
    setTimeout(function() {
        assert.ok(true);
        done();
    });
});

此测试按预期顺利通过。 然后我注释掉了除了

以外的所有内容
var done = assert.async();

测试会无限期地运行而不会失败。我希望它在超时后失败。

按下 "Abort" 按钮只是将标签更改为 "Aborting" 但不会使测试失败。

我搜索了QUnit documentation,建议添加

assert.timeout( 1000 ); // Timeout of 1 second

应该等同于全局设置

QUnit.config.testTimeout( 1000 );

但是使用

使我的测试崩溃
assert.timeout is not a function

QUnit.config.testTimeout is not a function

我已经在 Chrome、Firefox 和 IE11 中进行了 运行 测试,结果相同。

谁能告诉我我做错了什么?

我自己找到了答案。正确的语法是:

QUnit.config.testTimeout = 1000;

之后的所有测试都有效。或者我可以写

assert.timeout(1000);

在测试方法的开头-必须在assert.async()

之前