insta
1.41.1
insta:Rust 的快照測試庫
快照測試(有時也稱為批准測試)是根據參考值(快照)斷言值的測試。這類似於assert_eq!
允許您將值與參考值進行比較,但與簡單的字串斷言不同,快照測試可讓您針對複雜的值進行測試,並提供全面的工具來檢查變更。
如果您的參考值非常大或經常更改,則快照測試特別有用。
#[測試]fn test_hello_world() {insta::assert_debug_snapshot!(vec![1, 2, 3]);}
好奇的?有一個截圖影片顯示了整個工作流程:觀看 insta 介紹截圖影片。或者,如果您不喜歡視頻,請閱讀 5 分鐘的介紹。
Insta 還支援內聯快照,這些快照直接儲存在來源檔案中,而不是單獨的檔案中。這是透過配套的cargo-insta 工具完成的。
為了查看.snap
文件,有一個 vscode 擴展,它可以語法突出顯示快照文件、查看快照等。它可以從市場安裝:在市場上查看。
Insta 的所有 diff 操作都使用similar
。您可以獨立於 insta 使用它。您可以使用similar-asserts
crate來取得標準assert_eq!
巨集來實現類似 insta 的差異以進行定期比較:
使用similar_asserts::assert_eq;fn main() {讓reference = vec![1,2,3,4];assert_eq!(reference,(0..4).collect::<Vec<_>>()) ;}
如果您喜歡該項目並發現它有用,您可以成為贊助商。
專案網站
文件
問題追蹤器
許可證:Apache-2.0