問題描述
我正在為具有 2 級依賴注入的類編寫測試用例.我對 1 級依賴注入對象使用 @Spy 注釋,我想模擬第 2 級注入.但是,我在第二級不斷收到空指針異常.有什么方法可以將模擬注入@Spy 對象?
I'm writing a test case for a Class which has a 2 level of dependency injection. I use @Spy annotation for the 1 level dependency injection object, and I would like to Mock the 2nd level of injection. However, I kept getting null pointer exception on the 2nd level. Is there any way that I inject the mock into the @Spy object?
推薦答案
Mockito 不能執(zhí)行如此棘手的注入,因為它不是一個注入框架.因此,您需要重構(gòu)代碼以使其更具可測試性.使用構(gòu)造函數(shù)注入很容易做到:
Mockito cannot perform such a tricky injections as it's not an injection framework. So, you need to refactor your code to make it more testable. It's easy done by using constructor injection:
在這種情況下,您必須手動處理模擬和注入:
In this case you have to handle the mocking and injection manually:
這篇關(guān)于Mockito 將模擬注入 Spy 對象的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!