[英]How to verify a method was called inside another method with Mockito
[英]How to use Mockito to verify a method is called in another method?
我有一個帶有publish()方法的A類。 在該方法中,將調用另一個方法,並將A類對象作為參數傳遞給B類。
public class A {
public void publish() {
ClassB classb = new ClassB();
classb.sendRequest(this)
}
}
問題是,當調用publish()方法時,如何使用Mockito驗證sendRequest
方法是否被調用? 我是Mockito的新手。
如果在方法中創建新的ClassB實例,則不能使用Mockito。
您應該重構publish()以將ClassB作為參數,然后可以發送Mockito模擬而不是真實的ClassB,並在其上進行驗證。
像這樣:
public class A {
public void publish(ClassB classb){
classb.sendRequest(this)
}
}
並在您的測試中:
ClassB mockClassB = mock(ClassB.class);
A a = new A();
a.publish(mockClassB);
verify(mockClassB, times(1)).sendRequest(any());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.