2015-02-28 10 views
5

Sahte nesne A'yı B testindeki bir nesneye geçiren bir test yazmak istiyorum ve A'nın yöntemlerinden herhangi birisinin aranıp aranmadığını kontrol etmek istiyorum. Bazı bağlamları vermek için, B sınıfı, bir dizi parametreye dayanarak, A'yı belirli bir şekilde manipüle edecek şekilde tasarlanmıştır ve belirli koşullar altında hiçbir şey yapmamalı. Yani amacım bu senaryoyu test etmektir. Belirli bir yöntemi denir yapılmadığının nasıl test biliyorum:Mockito - bir nesnede ANY yönteminin çağrılıp yapılmadığını kontrol edin (nesneye erişildi)

verify(A, never()).myMethod(); 

Ama yöntemleri A'nın YOK çağrıldı emin olmak için bir yol bulmak mümkün değil. Bunu yapmanın bir yolu var mı?

cevap

8

verifyZeroInteractions'un aradığınız şey olabileceğine inanıyorum. Senin durumunda Mockito.verifyZeroInteractions(A)'u ararsın.

public static void verifyZeroInteractions(java.lang.Object... mocks)

Verifies that no interactions happened on given mocks. 

http://static.javadoc.io/org.mockito/mockito-core/2.8.47/org/mockito/Mockito.html#verifyZeroInteractions(java.lang.Object...)

+0

Yani sadece Mockito.verifyZeroInteractions (A) çağırmalıdır? –

+0

Yup, bunu yapmalı. – The111

+0

Hey, haklısın, tamamen işe yarıyor! Tam olarak aradığım şey. –