簡體   English   中英

在Elixir中驗證zip文件功能的最佳方法

[英]The best way to verify a zip file function in Elixir

我有一個包含zip函數的路徑庫,在編寫單元測試時,我試圖找到驗證zip函數正確工作的最佳方法。

有人可以告訴我最好的方式來驗證zip功能正常工作嗎?

我能想到的幾種方法是:

  1. 將生成的zip文件的md5與示例zip文件進行比較
  2. 列出zip文件的內容並確保內容正確

但是,這兩種方法似乎有點漫長,我猜這不是完全慣用的長生不老葯。 有人可以告訴我更好的方法嗎?

我將創建一個測試文件目錄,以將其壓縮到您的單元測試中,使用受信任的實用程序將其壓縮,並得到生成的md5。 然后對於您的單元測試,執行zip功能,獲取md5,然后與經過驗證的md5進行比較。

如果我是正確的,那么有些參數可能會影響zip處理的結果(例如塊大小)。 因此,除非您的目的是要詳盡地檢查您的zip程序是否再現了全部或部分zip功能,否則我發現更有趣的是驗證系統中的各種文件(或一些隨機文件)是否可以通過您的功能進行壓縮,然后使用不同的解壓縮工具在外部進行壓縮,最后比較文件與原始文件是否相同。 (當然,這會花費更多時間,但可以輕松實現自動化)。

關於MD5的使用而不是文件比較,我認為一方面文件比較容易編寫,另一方面您需要讀取整個文件來計算MD5,因此我認為不值得使用這個技巧可以加速比較-(特別是如果文件不同:o)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM