2012-12-28 240 views
4

單元測試中是否需要進行性能測試?如果是這樣,最佳做法是什麼?如果沒有,請提供理由。單元測試中的性能測試

一個示例可能是針對過濾器聲明完成過濾的時間的效率進行單元測試。

這只是一個例子。但是,我希望獲得有關未解決問題的建議,而不是上述問題的詳細解決方案。提前致謝。

回答

5

不,這當然沒有必要,甚至可能沒有用。沒有必要,因爲你編寫的大部分代碼都會有很高的性能,並且你的時間在別處更好。沒有用處,因爲如果您在單元測試期間嘗試衡量性能,那麼結果將是錯誤的,因爲運行測試的JVM幾乎肯定不會與您的代碼最終以多種方式運行的位置類似,包括同時發生的各種活動被測試代碼,垃圾收集自調節,通用JVM設置和JIT編譯等。

+0

有一個名爲JUnitPerf的JUnit性能測試工具。你認爲那會很方便嗎?謝謝。 – blue123

+0

在上述情況不適用的罕見情況下,或許如此。我不知道我見過一個。 –