我需要测试一些抛出异常的私有方法。由于它是私有方法,我使用反射来调用它。当我运行测试时,我得到InvocationTargetException(这可能是因为我的方法抛出异常)并且我的测试失败了。但是当我的方法异常被抛出时,我需要完成测试。我不确定它是否清楚,但这里是样本伪代码:
@Test(expected=myException.class)
{
ArgType1 arg1 = new ArgType1();
ArgType2 arg2 = new ArgType2();
Class[] args = new Class[2];
args[0] = ArgType1.class;
args[1] = ArgType2.class;
Method method = myClass.class.getDeclaredMethod("myMethod", args);
method.invoke(new myClass(), arg1, arg2);
}
所以,当myMethod()抛出myException时,我希望我的测试填充完成。但结果我的测试失败了,我得到了InvocationTargetException。请帮我解决这个问题。我还在寻找,但找不到答案。