2014-02-24 78 views
18

如果我使用Wrapper類類型變量作爲參數Mockito測試用例正在通過,但是, 如何爲int原始類型變量(它是ServiceImpl中的方法的參數)編寫Mockito測試用例。Mockito for int原型

+2

發佈待測試的方法以及您試圖對其進行測試的代碼。 –

回答

32

對於原始類型自變量whenverify,您可能會遇到anyargThat問題。這些以對象爲中心的方法可以正確地處理副作用,但它們傾向於返回null作爲虛擬返回值,這對Java通過自動裝箱展開原語不起作用。

幸運的是,org.mockito.ArgumentMatchers類有原始爲中心的方法(其中我在這裏列出的int方法)全套:

static int anyInt() 
static int eq(int value) 
static int intThat(org.hamcrest.ArgumentMatcher<java.lang.Integer> matcher) 

看到它們在documentation for the ArgumentMatchers class

+2

+1。這是做到這一點的正確方法。 'anyInt()'特別有用。 –