1
我想知道,如果我編寫自己的自定義RunNotifier
(並覆蓋默認方法),當測試失敗時會自動調用此方法,如fireTestFailure()
?自定義運行通知器
http://junit.sourceforge.net/javadoc/org/junit/runner/notification/RunNotifier.html#RunNotifier()
另一種方式問:我可以用這個方法,比如我會覆蓋和使用自定義RunListener方法?
感謝您的回覆!我遇到的問題是,JUnitCore無法停止測試(pleaseStop())。所以我想實現一個叫RunNotifier的Runner來阻止Testrun。但是,我再次無法將RunListener添加到RunNotifier(addListener等僅用於內部使用)或Runner中。所以我的問題是,我可以像自定義RunListener一樣處理自定義RunNotifier,只是覆蓋它的函數,然後在測試失敗,成功等時自動調用它們。 – ctekk 2012-02-29 09:30:18
不,您不能簡單地替換RunNotifier。如果您查看JUnitCore的源代碼(https://github.com/KentBeck/junit/blob/master/src/main/java/org/junit/runner/JUnitCore.java),則可以看到RunNotifier不是'不可替換。要使用@RunWith或類似的,你必須實現你自己的亞軍。如果你想停止測試,這是一個特定的問題,我會問更詳細的解釋問題的另一個問題。 – 2012-02-29 09:37:32
說實話,我已經做到了:http://stackoverflow.com/questions/9312021/junitcore-stopping沒有結果。這也將有助於如果我知道如何將RunListener添加到自定義的Runner? – ctekk 2012-02-29 09:39:26