2015-04-07 93 views
0

我正在嘗試使用Mockito編寫Junit測試用例。每當我試圖使用stubbing,即使用when和return時,我得到一個編譯時錯誤,那個時候該類未被識別。以下是我的JUnit片斷無法在JUnit Mockito中實現存根

@Before 
public void setUp() throws Exception { 
registryIndexConfig = mock(RegistryIndexConfig.class); 
when(registryIndexConfig.getIndexName()).thenReturn("Demogoblin"); 
} 

我已經導入下面的類,包

import static org.junit.Assert.*; 
import org.junit.After; 
import org.junit.Before; 
import org.junit.Before; 
import org.junit.Test; 
import org.mockito.Mock; 
import org.mockito.Mockito; 
import org.testng.Assert; 
import static org.mockito.Mockito.mock; 
import org.junit.runner.RunWith; 
import org.mockito.runners.MockitoJUnitRunner; 
import static org.mockito.Mockito.stub; 

請可有人點我究竟錯在這裏做什麼?

+0

「我得到一個編譯時錯誤,當時是不明身份」這很清楚恕我直言 – 2015-04-07 11:12:26

回答

3

方法mock,when和其他許多是Mockito類中的靜態方法。

使用時,必須將它們導入不合格(用靜態導入):

import static org.mockito.Mockito.*; 

或者,你可以導入Mockito類(像你這樣)

import org.mockito.Mockito; 

和使用方法合格

@Before 
public void setUp() throws Exception { 
    registryIndexConfig = Mockito.mock(RegistryIndexConfig.class); 
    Mockito.when(registryIndexConfig.getIndexName()).thenReturn("Demogoblin"); 
} 

我更喜歡靜態導入的方式。它使測試代碼看起來更乾淨。

+0

謝謝它工作:) – Poulami