[英]How to write unit test with okhttp using Mockito & Spring Boot
[英]Unit test in spring using Mockito
今天和Mockito一起工作時,春天,我對這種情況感到震驚,
public class MyClass {
private MyService myService;
int doSomethingElse(String str) {
.....
myService.doSomething(str);
...
}
}
public interface MyService {
String doSomething(String str);
}
public class Class1 {
private MyClass myClass;
public Stirng methodToBeTested() {
myClass.doSomethingElse("..");
}
}
public class class1Test {
@Mock
MyService myService;
@Resource
@Spy
@InjectMocks
MyClass myClass;
@Resource
@InjectMocks
Class1 class1;
public void setUPTest() {
MockitoAnnotations.initMocks(this);
}
@Test
public void methodToBeTestedTest() {
this.setUPTest();
...
class1.methodToBeTested();
}
}
在這里,我要模擬“ MyService”。 但是MyService在“ MyClass”中使用,而在“ Class1”中使用。
我想使用spring初始化“ MyClass”和“ Class1”。
當我嘗試運行此測試時,出現以下異常
org.mockito.exceptions.base.MockitoException:無法模擬/間諜類$ Proxy79 Mockito無法模擬/間諜以下:-最終類-匿名類-基本類型
誰能幫我這個?
您正在測試Class1
,它僅將MyClass
作為依賴項。 MyService
與該測試無關。 您應該模擬MyClass
並測試對doSomethingElse
的調用。
如果您希望測試對MyService
doSomething
的調用,則應編寫一個MyClassTest
對MyService
的依賴關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.