Giriş
Şu satırı dahil ederiz. Mock nesne yaratmak için kullanılır. Bu anotasyon ile Mockito.mock() metodunu kullanmaya gerek yok.
- JUnit 4 kullanıyorsak Runner olarak MockitoJUnitRunner'ın kullanılması gerekir.
- JUnit 5 kullanıyorsak ExtendWith olarak MockitoExtension'ın kullanılması gerekir.
Eğer bu ikisini de kullanmıyorsak şu metodu @Before olarak işaretli metod içinde çağırmak gerekir.
Örnek
Şöyle yaparız. Test MockitoJUnitRunner veya MockitoExtension kullanmadığı için MockitoAnnotations.initMocks(this); çağrısı yapılıyor
Şu satırı dahil ederiz. Mock nesne yaratmak için kullanılır. Bu anotasyon ile Mockito.mock() metodunu kullanmaya gerek yok.
import org.mockito.InjectMocks;
import org.mockito.Mock;
Bu anotasyonun çalışması için testin- JUnit 4 kullanıyorsak Runner olarak MockitoJUnitRunner'ın kullanılması gerekir.
- JUnit 5 kullanıyorsak ExtendWith olarak MockitoExtension'ın kullanılması gerekir.
Eğer bu ikisini de kullanmıyorsak şu metodu @Before olarak işaretli metod içinde çağırmak gerekir.
MockitoAnnotations.initMocks(this);
Bu yazıyla ilgili olarak Mockito @InjectMocks Anotasyonu yazısına bakabilirsiniz.Örnek
Şöyle yaparız. Test MockitoJUnitRunner veya MockitoExtension kullanmadığı için MockitoAnnotations.initMocks(this); çağrısı yapılıyor
public class PaidListTest {
@Mock
PaymentService paymentService;
@Before
public void setUp() {
MockitoAnnotations.initMocks(this);
mapperObj = new ObjectMapper();
List<PaymentGetServiceDO> response = new ArrayList<PaymentGetServiceDO>();
}
@Test
public void getPaidList() {
List<PaymentGetServiceDO> response = null;
try {
response = paymentService.setPaidStatusList();
if(response != null && response.size() > 0){
for(int i = 0; i < response.size(); i++){
assertNotNull(response.get(i).getAgentcode());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
extraInterfaces AlanıMock nesnemizin başka arayüzlerden de kalıtmasını istiyorsak kullanırız.
Örnek
Şöyle yaparız
//Create a mock that implements Bar interface
@Mock(extraInterfaces = {Bar.class})
private Foo foo;
Aynı şeyi kodla şöyle yaparız
Foo mock = Mockito.mock(Foo.class, withSettings().extraInterfaces(Bar.class));
Örnek
Şöyle yaparız
@Mock(extraInterfaces = Closeable.class)
private Foo foo;
Hiç yorum yok:
Yorum Gönder