我有一個Java類。如何檢查類是否包含JUnit4測試的方法?我是否必須對使用反射的所有方法進行迭代,還是JUnit4提供這種檢查?如何檢查Java類是否包含JUnit4測試?
編輯:
,因爲評論中不能包含的代碼,我放在基礎上,答案在這裏我的代碼:
private static boolean containsUnitTests(Class<?> clazz)
{
List<FrameworkMethod> methods= new TestClass(clazz).getAnnotatedMethods(Test.class);
for (FrameworkMethod eachTestMethod : methods)
{
List<Throwable> errors = new ArrayList<Throwable>();
eachTestMethod.validatePublicVoidNoArg(false, errors);
if (errors.isEmpty())
{
return true;
}
else
{
throw ExceptionUtils.toUncheked(errors.get(0));
}
}
return false;
}
謝謝!看看我是如何在問題主體中使用它的。 – oshai 2011-01-30 18:13:57