为了自动运行我的所有测试类,我在专用目录中查找所有类文件,将路径转换为包名并检查此类是否实现给定接口:
try {
Class<? > myTestClass = Class.forName( constructedClassName );
if( myTestClass.isInstance( MyTestInterface.class ) ) {
testCollection.add( myTestClass );
}
}
catch( Error e ) {
// ignore, no valid test class
}
今天我使用这种技术遇到了一个丑陋的错误(参见这个 SO 问题)。
问题:
如何收集我所有的测试类,而不必忽略我不感兴趣的类可能发生的错误?