2010-03-06 35 views
1

停止執行程序林我目前正在開發一種自動化「測試」類(其他同一封裝運行多個獨立測試)。測試文件的目的是顯示每個測試是否通過或失敗。一些正在測試的文件在運行測試時不能正確編寫ArrayOutOfBoundsException,這會導致我的測試文件崩潰並且無法繼續執行,直到執行其他測試。我不能修改代碼來修復正在測試的項目中的錯誤。停止ArrayOutOfBoundsException從Java中

- >如何停止停止在Java中程序執行的異常沒有創建任何新類

感謝您的幫助,建議和共享。

+0

你能修改測試中的代碼嗎? – 2010-03-06 19:54:56

+0

我不能像評價其他人的工作一樣。感謝您的關注。 – Carlos 2010-03-06 20:17:04

回答

4

阻止它發生的最佳方法:修復代碼以執行適當的檢查。

如果你不能修復這實際上是錯誤的代碼,你可以趕上除明確在「外」的水平,記錄警告並繼續進行下一個文件:

try 
{ 
    operationWhichMightThrow(); 
} 
catch (ArrayIndexOutOfBoundsException e) 
{ 
    log.warning("Failed file " + filename, e); 
    // Do whatever you need to continue to the next file. 
} 
+0

好的,非常感謝Jon,我將使用if-catch,因爲我不允許修改給定的「評估」其他工作的代碼。祝一切順利。 – Carlos 2010-03-06 20:19:32

+0

那麼,你可以修改測試中的代碼? – 2010-03-06 20:27:35

+0

@Jon Skeet,在嘗試弄清楚如何使用try-catch塊後,在這種情況下不會很好地鍛鍊。我不想創建任何額外的類,是否有可能在同一個類「testfile」中捕獲一個方法? – Carlos 2010-03-07 00:51:20

1

抓例外並將其記錄爲測試失敗。