差異處

這裏顯示兩個版本的差異處。

連向這個比對檢視

java:junit:tech:capture_log4j_output [2018/04/10 14:41]
tony
java:junit:tech:capture_log4j_output [2023/06/25 09:48]
行 1: 行 1:
-{{tag>​junit}} 
-====== How to verify the Log4j output? ====== 
-===== Problem ===== 
-log錯誤是一種錯誤回報的例外處理機制。當功能的測試案例寫完後,就是要開始針對有問題的案例撰寫單元測試。 
-===== How to? ===== 
-<code java> 
-private StringBuffer mSB; 
-private StringBufferOutputStream mSBOutputStream;​ 
-private WriterAppender testAppender;​ 
  
-@Before 
-public void setUp() throws Exception { 
- mSB = new StringBuffer();​ 
- mSBOutputStream =  new StringBufferOutputStream(mSB);​ 
- 
- Writer w = new OutputStreamWriter(mSBOutputStream);​ 
- testAppender = new WriterAppender();​ 
- testAppender.setLayout(new PatternLayout(PatternLayout.DEFAULT_CONVERSION_PATTERN));​ 
- testAppender.setName("​test"​);​ 
- testAppender.activateOptions();​ 
- testAppender.setWriter(w);​ 
- 
- LogManager.getLogger(TimeWatcherBuilder.class).addAppender(testAppender);​ 
-} 
-</​code>​ 
- 
-<code java> 
-@After 
-public void teardown() throws SchedulerException{ 
- LogManager.getLogger(TimeWatcherBuilder.class).removeAppender(testAppender);​ 
-} 
-</​code>​ 
-===== Reference ===== 
-  * [[https://​stackoverflow.com/​questions/​6995946/​log4j-how-do-i-redirect-an-outputstream-or-writer-to-loggers-writers|How to redirect the outputstream or writer to loggers writers?]] 
- 
-=====    ===== 
----- 
-\\ 
-~~DISQUS~~