考虑下面的类(使用CDI +一个cutstom Restclient) public class A {
Restclient client;
public Object init如果我为A使用@Spy,我会得到一个NPE,因为我的Restclient没有初始化(即使我添加了@Mock RestClient客户端)和when(...).thenReturn(...)实际调用真正的方法
到目前为止,我有一个名为RestClient的rest客户机,它实现了一个名为IRestClient的接口。在我的代码中,我在声明其他客户端时使用IRestClient。class RestClientFactory public static IRestClient create() return new RestClient();}
至少这样,我只有一个地方可以将RestClient()更改为NewRestClient()。