2010-03-06 66 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

抓例外并将其记录为测试失败。