在我看來,有些代碼比其他代碼更容易進行單元測試。我喜歡爲高度功能的代碼編寫單元測試(通過這個,我指的是主要對它們的參數進行操作並返回計算結果的函數)。你如何測試非功能代碼?
但是,當代碼更多地關注它的副作用時,測試它變得更加困難。例如,我在工作中使用的套接字類具有這樣聲明的方法:
void Socket::Create(void);
它不接受任何參數,並且不返回任何結果。在出錯時拋出,但底層調用的直接結果(socket()
)被類本身隱藏。
任何人都可以推薦技術或可能是一本書,或網站學習單元測試代碼,主要是關於其副作用的更高級的技術?
它寫入功能! – muhmuhten 2010-09-25 03:28:26