我有一個關於單元測試的問題。我一直在想這個問題好幾天,卻找不到答案。如果使用模擬,在這種情況下進行單元測試的目的是什麼
說,我有一個功能,從Web服務下載文件並將其寫入磁盤。測試它的目的是什麼,沒有真正看到文件被下載並寫入磁盤?
雖然我明白我們可以嘲笑Web服務,但我怎麼能在這種情況下做到這一點?據我所知,像Mockito這樣的東西只會模擬行爲,但不會給出有意義的數據(在這個例子中是文件)。
即使我們可以嘲笑Web服務的行爲,我怎麼可以在沒有真正寫入磁盤的情況下將文件寫入磁盤?
對不起,我沒有具體的例子。請隨時發表您的意見。
非常感謝
啓發答案 – goh 2012-08-13 02:29:08
+1好答案 - 臨時文件的使用絕對是好的,我想說的一件事就是確保你的測試後來刪除它們,以防止它們建立起來(在調查爲什麼CI服務器有一個完整的磁盤...) – robjohncox 2013-08-14 13:32:54
@robjohncox你總是可以確保在正在創建的文件上調用'deleteOnExit'。 – 2013-08-21 12:11:57