Chai 檢查標記

Checkmark 是一個 Chai 外掛,用於計算測試期間所做的斷言次數。通常,在處理非同步測試時,很難確定回呼函式是否真的被呼叫。使用 Checkmark,您可以確保已進行斷言。
安裝
將 Checkmark 作為瀏覽器中的元件、CommonJS 模組或透過 AMD 包含進您的專案。
<!-- Browser -->
<script src="chai.js"></script>
<script src="chai-checkmark.js"></script>
// CommonJS
var chai = require("chai"),
plugin = require("chai-checkmark")
chai.use(plugin)
// AMD
require(["chai", "chai-checkmark"], function(chai, plugin) {
chai.use(plugin)
})
如何使用
describe("something", function() {
it("should check two things", function(next) {
expect(2).checks(next) // <-- pass in the callback
"sync test".should.be.a("string").mark() // <-- check 1
setTimeout(function() {
// check 2, callback is called after the current event finishes
"async test".should.be.a("string").mark()
}, 500)
})
})
API
Checkmark 建立在 Chai 的斷言函式庫之上,僅增加了兩個方法
expect(Number).check(Function)
或 .checks(Function)
這必須在 .mark()
之前呼叫,但不一定要在測試的一開始。您要設定期望 .mark()
被呼叫的次數,並選擇性地傳入一個回呼函式,在達到標記次數時呼叫。
expect(str).to.be.a("string").mark()
將 .mark()
加到您要由 Checkmark 追蹤的每個斷言的結尾。您可以使用 Chai 的任意數量的斷言,包括 .and
,只要您以 .mark()
結束您的陳述即可。
貢獻
歡迎提交 Pull Requests。只有當它們基於 develop 分支的最新提交時,才會被合併。如果您落後於最新進度,請變基 (不要合併!) 您的變更。若要了解為什麼變基比合併更好,請查看 Git 變基的理由。
簡而言之,要使您的工作副本與 develop 的最新提交保持同步,您可以使用變基功能:git pull --rebase
。有關詳細資訊,請參閱 使用變基拉取。