看看我寫的最後一個JUnit測試用例,我在類構造函數中調用了log4j的BasicConfigurator.configure()方法。這對於從Eclipse的「作爲JUnit測試用例運行」命令運行這個單獨的類來說工作得很好。但是我意識到這是不正確的:我非常確定我們的主測試套件從一個進程運行所有這些類,因此log4j配置應該在某處更高。在哪裏可以在JUnit測試類中配置log4j?
但我仍然需要自己運行一個測試用例,在這種情況下,我希望配置log4j。我應該在哪裏放置配置調用,以便在測試用例獨立運行時運行,而不是在測試用例作爲更大套件的一部分運行時運行?
它怎麼會知道這是一個「log4j配置文件?」什麼是文件名? (log4j.xml?) – Chad 2013-08-24 02:37:44
@Chad:我編輯了我的答案來解決你的問題。請參閱靜態塊的鏈接,以確切瞭解它如何實現。 – 2013-08-29 04:15:54
我正在使用log4j2,我必須使用以下設置來指示文件:'-Dlog4j.configurationFile = log4j2.xml'。另外,如果您嘗試調試加載/啓動,則此設置很有用:'-Dlog4j2.debug = true'。 – Kent 2017-11-02 00:40:14