QUnit.test.only()

添加的版本:1.20.0

说明

QUnit.test.only( name, callback )
QUnit.only( name, callback )

添加一个专门运行的测试,防止其他测试运行,除非它们以这种方式定义。

参数 说明
name(字符串) 被测单元的名称
callback(函数) 执行测试的函数

回调参数

参数 说明
assert(对象) 带有assertion methods 的新实例对象

使用此方法将您的测试套件集中在特定的测试上。 QUnit.only 将导致套件中的任何其他测试被忽略。

此方法是从 HTML 报告器接口重新运行单个测试的替代方法,并且特别有用,因为它可以在不首先运行测试套件的情况下预先完成,例如在包含许多long-running 测试的代码库中。

它也可以用来代替 --filter CLI 选项,例如如果您已经在文本编辑器中打开了测试。类似于使用debugger 关键字的方式。

在调试更大范围的代码时,您可能希望only 运行给定模块中的所有测试。您还可以使用 QUnit.module.only() 将模块中的所有测试自动标记为“only” 测试。

变更日志

QUnit 2.12 QUnit.only()方法被重命名为QUnit.test.only().
用于QUnit.only()仍然支持作为别名。
QUnit 1.20 引入了QUnit.only() 方法。

例子

如何使用QUnit.test.only 过滤运行的测试。

QUnit.module('robot', hooks => {
  let robot;
  hooks.beforeEach(() => {
    robot = new Robot();
  });

  QUnit.test('say()', assert => {
    assert.true(robot.say('Hello'));
  });

  // Run only this test
  // For example, you are working on changing this method.
  QUnit.test.only('laser()', assert => {
    assert.true(robot.laser());
  });

  QUnit.test('take()', assert => {
    assert.true(robot.take(5));
  });
});