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);
});