2011-11-01 32 views
0

當使用Mockito.when時,是否可以獲取/存儲使用哪些參數?是否可以「取」通過Mockito.when使用的參數?

例如這個僞代碼:

Mockito.when(mock.someMethod(**any string**)).thenReturn(print(** any string **)); 

打印將是:

public void print(String s) { 
    System.out.println(s); 
} 

哪位能像這樣被使用:

Person mockPerson = ... 

mockPerson.setName("John"); 

這將觸發 '約翰' 將被打印出來。

也許是一個蹩腳的例子,但我想「存儲」/「使用」模擬方法將被調用的任何參數。

後續問題:如果沒有,其他測試框架可以做到這一點。

回答

2

ArgumentCaptor文檔可能會對你有用。

+0

ArgumentCaptor將允許您捕捉要驗證後的價值,但不會讓你作用於返回語句中的值。 原始問題想要立即用捕獲的值做一些事情,而不僅僅是驗證它的價值。 – Mikezx6r

相關問題