2012-08-10 38 views
1

我有一個像素數組,我想保存到一個圖像文件。 Python似乎有一些庫可以爲我做到這一點,所以我將使用其中的一個庫,傳入像素數組並使用我沒有寫入的函數將圖像頭和數據寫入磁盤。單元測試二進制文件輸出

如何對這種情況進行單元測試?

我可以:

  • 測試像素陣列我傳遞給外部庫是什麼,我希望它是。
  • 測試即我調用的外部庫函數給我預期的返回值。
  • 手動驗證圖像看起來像我期待的(通過打開圖像和眼球)。

我不能:

  • 測試映像文件是正確的。要做到這一點,我不得不生成一個圖像來比較(但我怎麼生成'可信'的圖像?),或寫一個單元可測試的圖像寫模塊(所以我不需要打擾外部庫)。

這足以提供我的代碼覆蓋?測試我的代碼和外部庫之間的接口是否足夠,讓我相信外部庫(圖像文件)的輸出通過手動觀察是正確的?

如何編寫單元測試以確保您使用的外部庫能夠做到您期望的結果?

回答

2

Python上的舊比特。

但是,這是我如何接近它。

抓拍圖像做手動測試。計算校驗和(也許是MD5)。然後自動化測試需要通過計算MD5(在本例中)與手動測試中完成的MD5進行比較。

希望這會有所幫助。