0
我有一個3類方法的服務類,Service類也使用了一些@Autowired註解。 3種方法中,我想模擬兩種方法,但使用真正的方法爲第三種方法。一起使用@Spy和@Autowired
問題是:
- 如果我使用@Autowired與@Spy,所有三個實際的方法實現被調用。
- 如果我僅使用@Spy,則調用實型方法時返回空指針,因爲沒有初始化Autowired對象。
我有一個3類方法的服務類,Service類也使用了一些@Autowired註解。 3種方法中,我想模擬兩種方法,但使用真正的方法爲第三種方法。一起使用@Spy和@Autowired
問題是:
我知道這些兩個選項:
@Autowired
@InjectMocks
private ProductController productController;
@BeanSpy
private ProductService productServiceSpy;
@Autowired
private ProductController productController;
@Autowired
private ProductService productService;
@Before
public void setUp() {
ProductService productServiceSpy = Mockito.spy(productService);
ReflectionTestUtils.setField(productController, "productService", productServiceSpy);
}