QUnit.log()

添加的版本:1.0.0

说明

QUnit.log( callback )

注册回调以在断言完成时触发。

注意:QUnit.log() 回调不处理承诺并且必须是同步的。

参数 说明
回调(函数) 回调执行。为回调详细信息对象提供单个参数

详细信息对象

传递给回调:

属性 说明
result(布尔值) 断言的布尔结果,true 表示通过,false 表示失败。
actual 比较断言的一方面。当使用ok() 时可以是undefined
expected 比较断言的一方面。当使用ok() 时可以是undefined
message(字符串) 断言提供的字符串说明。
source(字符串) 关联的堆栈跟踪,来自异常或指向断言源。取决于浏览器对提供堆栈跟踪的支持,因此可以未定义。
module(字符串) 断言的测试模块名称。如果断言未连接到任何模块,则属性的值为 undefined
name(字符串) 断言的测试块名称。
runtime(数字) 自包含 QUnit.test() (包括设置)开始以来经过的时间(以毫秒为单位)。
todo(布尔值) 指示此断言是否是待办事项测试的一部分。

例子

注册一个记录断言结果及其消息的回调:

QUnit.log(details => {
  console.log(`Log: ${details.result}, ${details.message}`);
});

每当断言失败时记录模块名称和测试结果:

QUnit.log(details => {
  if (details.result) {
    return;
  }

  let output = `[FAILED] ${details.module} > ${details.name}`;

  if (details.message) {
    output += `: ${details.message}`;
  }
  if (details.actual) {
    output += `\nexpected: ${details.expected}\nactual: ${details.actual}`;
  }
  if (details.source) {
    output += `\n${details.source}`;
  }

  console.log(output);
});