QUnit.config.autostart

添加版本:1.0.0.

描述

控制测试运行何时开始,例如,在使用 RequireJS、AMD、ES6 动态导入或其他方式异步加载测试文件后。

类型 布尔值
默认值 true

在浏览器中,QUnit 默认情况下会等待所有 <script> 元素加载完毕(通过窗口 load 事件)。当使用 QUnit CLI 时,它会等到指定的文件被导入。

将此属性设置为 false 以指示 QUnit 等待更长时间,允许您异步加载测试文件。请记住,一旦您准备好开始运行测试,就需要调用 QUnit.start()

如果您异步加载测试文件而没有禁用自动启动,您可能会遇到以下警告

警告:运行结束后的意外测试。

示例

ESM 动态导入

此示例使用 import() 运算符来动态加载 ECMAScript 模块 (ESM) 文件。

<script src="../lib/qunit.js"></script>
<script type="module" src="tests.js"></script>
// tests.js
QUnit.config.autostart = false;

Promise.all([
  import('./foo.js'),
  import('./bar.js')
]).then(function () {
  QUnit.start();
});

使用 RequireJS 加载

此示例使用 RequireJS 来调用由 AMD 规范(异步模块定义)定义的“require”函数。

QUnit.config.autostart = false;

require(
  [
    'tests/testModule1',
    'tests/testModule2'
  ],
  function () {
    QUnit.start();
  }
);