2014-03-12 51 views
4

我正在使用SLF4J SimpleLogger進行單元測試。由於外部因素的影響,改變日誌提供者的工作將會非常困難。我可以關閉SLF4J SimpleLogger中的日誌記錄嗎?

被測試的類從擁有的框架中抓取一個記錄器來記錄錯誤。問題是,當我測試一個錯誤條件時,即使測試通過,測試日誌中也會出現一個很大的可怕錯誤信息。我認爲這是一件壞事。

當我使用Log4J時,我可以抓住被測試的類的記錄器,並在運行測試之前將其級別更改爲OFF,然後將其更改回來。它看起來像SimpleLogger沒有OFF級別,所以最安靜的設置將是ERROR,當調用error()時,這當然仍然會記錄。

有沒有更好的方法來做到這一點?它甚至有可能嗎?

+0

您是否需要關閉一次測試或所有測試? – assylias

+0

只需進行一些測試 - 大部分測試用例都是正面的,但有一些測試用來驗證錯誤處理。理想情況下,如果一個正面的測試用例出錯了,我應該在測試日誌中看到錯誤,所以我不希望在測試執行期間全部禁用日誌記錄 – Coderer

回答

相關問題