assert.timeout()

添加的版本:2.4.0

說明

timeout( duration )

設置在測試失敗之前等待異步操作完成的時間。

名字 說明
duration(數字) 等待異步操作的時間長度(以毫秒為單位)。

assert.timeout() 定義在當前測試中(最多)等待多長時間。它在 per-test 的基礎上覆蓋 QUnit.config.testTimeout

超時長度僅在執行異步操作時適用。如果通過0,則任何異步任務都可能無法通過測試。

如果在設置超時後調用assert.timeout(),舊的超時將被清除,新的持續時間將用於新的計時器。如果將非數字值作為參數傳遞,則函數將引發錯誤。

例子

QUnit.test('wait for an event', assert => {
  assert.timeout(1000); // Timeout after 1 second
  const done = assert.async();

  const adder = new NumberAdder();
  adder.on('ready', res => {
    assert.strictEqual(res, 12);
    done();
  });
  adder.run([ 1, 1, 2, 3, 5 ]);
});
QUnit.test('wait for an async function', async assert => {
  assert.timeout(500); // Timeout after 0.5 seconds

  const result = await asyncAdder(5, 7);
  assert.strictEqual(result, 12);
});

使用經典的 ES5 語法:

QUnit.test('wait for a returned promise', function (assert) {
  assert.timeout(500); // Timeout after 0.5 seconds

  var promise = asyncAdder(5, 7);

  return promise.then(function (result) {
    assert.strictEqual(result, 12);
  });
});