165
A
回答
258
39
嘗試使用deep equal。它會比較嵌套數組和嵌套Json。
expect({ foo: 'bar' }).to.deep.equal({ foo: 'bar' });
+4
這也適用於數組:'expect([1,5,10] .sort())。to.deep.equal([1,10,5])' – alxndr
-1
這是如何使用chai深度測試關聯數組。
我有一個問題,試圖斷言兩個聯合陣列是相等的。我知道這些應該不是真的在JavaScript中使用,但我正在編寫遺留代碼的單元測試,它返回對關聯數組的引用。 :-)
我做到了通過定義變量作爲一個對象(不是數組)之前,我的函數調用:
var myAssocArray = {}; // not []
var expectedAssocArray = {}; // not []
expectedAssocArray['myKey'] = 'something';
expectedAssocArray['differentKey'] = 'something else';
// legacy function which returns associate array reference
myFunction(myAssocArray);
assert.deepEqual(myAssocArray, expectedAssocArray,'compare two associative arrays');
相關問題
- 1. 測試路徑無法正常工作
- 2. Rails測試將無法正常工作
- 3. 返回數組無法正常工作
- 4. 數組枚舉無法正常工作?
- 5. Mysql數組無法正常工作
- 6. 數組編輯無法正常工作
- 7. dropDownList數組無法正常工作
- 8. 數組無法正常工作
- 9. Firebase等於無法正常工作
- 10. 等待/異步無法正常工作
- 11. 等待selenium webdriver無法正常工作
- 12. 函數getElementOfArrayProperty()正常工作但無法通過測試
- 13. sscanf()測試整數時無法正常工作
- 14. 測試用例工作不正常。設置兩個數字相等的問題
- 15. 相機無法正常工作掃描
- 16. 探測無法正常工作Asp.net 2.0
- 17. 碰撞檢測無法正常工作
- 18. vscode es6調試無法正常工作
- 19. Xamarin調試無法正常工作
- 20. 導航屬性無法正常工作
- 21. PHP可讀性無法正常工作
- 22. UISegmentedControl alpha屬性無法正常工作
- 23. 內容屬性無法正常工作
- 24. knockout.js utils.arrayFilter屬性無法正常工作
- 25. cakephp 2.2 Acl無法正常工作(組)
- 26. JAXB解組無法正常工作
- 27. Angular2項組件無法正常工作
- 28. SQL分組無法正常工作
- 29. 組合框無法正常工作
- 30. 角Tree組件無法正常工作
抱歉,這是我最討厭這些「流暢的語言的原因一個典型的例子「API。這不是英語:它是一種半英語的重擊版本。那麼爲什麼假裝它是英語呢?對於非程序員?那麼我認爲它會更清晰明顯,而不是更少。 「這很容易,你用'equal'來測試相等......哦,不是因爲它在做一個對象比較......好吧,數組就像一個特殊類型的對象......你知道,只需要使用eql作爲數組不要擔心爲什麼。「大! – fool4jesus