【发布时间】:2019-11-01 04:29:45
【问题描述】:
我正在尝试使用 mockito 访问受 try catch 保护的复制方法的一部分,同时尝试在我的 junit 测试中获得 100% 的覆盖率。包含我要访问的方法的类实现了可克隆,因此很难抛出 ClassNotFoundExceptions。
我尝试通过 mockito 在调用方法时抛出异常的能力以几种不同的方式强制此异常,但总是会出现 InvalidUseOfMatchersException。
以下是我需要访问的代码和我达到它的最佳尝试,分别
catch(ClassNotFoundException cnfe) {
cnfe.printStackTrace();
}
MyClass dict = mock(MyClass.class);
Object obj1 = new Object();
when(MyClass.copy(anyObject())).thenThrow(ClassNotFoundException.class);
dict.copy(obj1);
我希望到达 cnfe.printStackTrace() 行但不能。
【问题讨论】:
-
同样的问题适用于我需要抛出一个 clonenotsupportedexception 的克隆方法 I
-
您想抛出 ClassNotFoundException,但实际上您正在抛出 CloneNotSupportedException。
-
@MaximeLaunois 输入错误 - 谢谢,但错误仍然存在