有沒有一種常規方法來嘗試一組assert
,以便在測試失敗之前始終對其進行評估?在測試失敗之前允許多個斷言錯誤
比方說,我的測試評估一些名字在頁面上存在:現在
var pageContent = 'dummy page content';
//.include(haystack, needle, [message])
//Asserts that haystack includes needle.
assert.include(pageContent, 'Alice');
assert.include(pageContent, 'Bob');
assert.include(pageContent, 'John');
,如果Alice丟失,則測試將失敗,一個錯誤:
>AssertionError: expected 'dummy page content' to contain 'Alice'
不過我想要得到通知所有三個名字都失蹤了,因爲在這種情況下失敗一個條件並不妨礙評估他人。
與其編寫一個包裝方法來聚合這些檢查的可能輸出並拋出一個錯誤,我希望能有第三方庫「專門化」這類事情或者可能內置的功能我俯視。
「軟」斷言正是我前往的地方,但我明白了你的觀點;我想這些的需要表明我的測試缺乏教科書原子性。也許我真正追求的是一種模式,允許(在上面的例子中)從輸入數組中創建3個單獨的測試?我會解決類似於'includesOne'的問題,但是我想不出一種斷言失敗的方式,將其記錄爲缺少值的顯式列表。 –