這個JSONdiff工具的功能
文字區別工具將JSON視為行,因此重新排序的鍵或重新格式化的檔案顯示為紅色和綠色的牆。這個工具可以比較兩個JSON文件的結構。它走過兩棵樹,報告每一個新增,刪除和改變的值與其確切的JSON路徑,標誌值的型別改變 (一個數字變成字串是一個經典的API迴歸),並顯示結果作為可摺疊的樹或平面列表的路徑。它們可以在 Web Worker 中進行比較,
使用方法
- 貼上原始檔案到A,新檔案到B。
- 閱讀總結計數器:新增,刪除,更改和型別更改。
- 使用樹檢視擴充套件只有不同分支,或者切換到路徑以獲取像
$.items[2].price這樣的複製友好的列表。 - 當陣列是集合 (標籤,許可權) 而不是有序列表時,請啟用 忽略順序
- 設定按鍵匹配 (例如
id) 以身份對應陣列元素,因此插入一個元素不會使每一個接下來的元素都變化。
典型用途
- **API迴歸檢查:**比較部署後的階段化和生產反應。
- **配置漂移:**不同兩個環境配置或Terraform JSON計劃。
- 合同測試: 發現後端被無聲刪除或更名。
- **安裝:**在接受快照測試之前,檢查變化情況。
技巧與邊界情況
- 物件金鑰順序從來不重要;JSON 物件根據定義是無順序的。
1和1.0是 JSON 中等數;"1"和1是型別變更。- 在忽略順序下,原始陣列被比作多組,所以重複數仍然會計。
- 按鍵匹配僅適用於所有包含該鍵的物件陣列;其他陣列歸於索引比較。
- 不有效的 JSON 報道瞭解析器的錯誤訊息。