我无法模拟IntelliJIdea中外部库中的类。它给了我一个错误。
java.lang.NoClassDefFoundError: com/adobe/cq/mcm/salesforce/SalesforceClient
at com.ig.igwebcms.services.test.SalesforceLeadSearch1Test.testGetSalesforceClientObject(SalesforceLeadSearch1Test.java:41)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
以下是我的代码:
@RunWith(MockitoJUnitRunner.class)
public class SalesforceLeadSearch1Test {
@Test
public void testGetSalesforceClientObject() throws Exception {
SalesforceClient client = mock(SalesforceClient.class);
Map configProps=mock(Map.class);
}
}
我已经检查过,依赖是在maven' POM也是如此。尝试模拟它们时,外部库中的所有类都会遇到同样的异常。 &安培;地图类的模拟并没有给出这个错误。
答案 0 :(得分:0)
Mockito无法模仿一切。事实上,在他们的代码指南中,您可以看到他们建议不要模拟您不拥有的类型。您应该尝试重构您的代码,以便客户端被抽象化。
你也在嘲笑一张地图......你为什么嘲笑它?为什么不创建一个呢?