Als «mockito» getaggte Fragen

Mockito ist ein spöttisches Framework für Java. Es ist von EasyMock inspiriert, zielt jedoch darauf ab, das Mock-Stubbing, die Verifizierung und das Werkzeug noch weiter zu vereinfachen.

7
Mockito - @Spy vs @Mock
Mockito - Ich verstehe, dass ein Spion die realen Methoden für ein Objekt aufruft, während ein Mock Methoden für das Doppelobjekt aufruft. Auch Spione sind zu vermeiden, es sei denn, es riecht nach Code. Wie funktionieren Spione und wann sollte ich sie tatsächlich benutzen? Wie unterscheiden sie sich von Mocks?

7
Mockito Wie man nur den Aufruf einer Methode der Oberklasse verspottet
Ich benutze Mockito in einigen Tests. Ich habe folgende Klassen: class BaseService { public void save() {...} } public Childservice extends BaseService { public void save(){ //some code super.save(); } } Ich möchte nur den zweiten Aufruf ( super.save) von verspotten ChildService. Der erste Aufruf muss die reale Methode aufrufen. …
94 java  mockito 

6
Mockito: Mock private Feldinitialisierung
Wie kann ich eine Feldvariable verspotten, die inline initialisiert wird? class Test { private Person person = new Person(); ... public void testMethod() { person.someMethod(); ... } } Hier möchte ich verspotten, person.someMethod()während ich die Test.testMethod()Methode teste , für die ich die Initialisierung einer personVariablen verspotten muss . Irgendeine Ahnung? …

17
Wenn ich einen Mockito-Test ausführe, tritt eine WrongTypeOfReturnValue-Ausnahme auf
Fehlerdetail: org.mockito.exceptions.misusing.WrongTypeOfReturnValue: Boolean cannot be returned by updateItemAttributesByJuId() updateItemAttributesByJuId() should return ResultRich This exception might occur in wrongly written multi-threaded tests. Please refer to Mockito FAQ on limitations of concurrency testing. Mein Code: @InjectMocks protected ItemArrangeManager arrangeManagerSpy = spy(new ItemArrangeManagerImpl()); @Mock protected JuItemWriteService juItemWriteService; when(arrangeManagerSpy .updateItemAttributes(mapCaptor.capture(), eq(juId), eq(itemTO.getSellerId()))) .thenReturn(false); Wie …
93 java  mockito 

23
Plugin konnte nicht initialisiert werden: Schnittstelle org.mockito.plugins.MockMaker
Nach dem Start der Tests wird folgende Ausnahme angezeigt: Testcase: treeCtorArgumentTest(com.xythos.client.drive.cachedtree.CachedTreeTest): Caused an ERROR Could not initialize plugin: interface org.mockito.plugins.MockMaker java.lang.IllegalStateException: Could not initialize plugin: interface org.mockito.plugins.MockMaker at org.mockito.internal.configuration.plugins.PluginLoader$1.invoke(PluginLoader.java:66) at com.sun.proxy.$Proxy7.isTypeMockable(Unknown Source) at org.mockito.internal.util.MockUtil.typeMockabilityOf(MockUtil.java:29) at org.mockito.internal.util.MockCreationValidator.validateType(MockCreationValidator.java:22) at org.mockito.internal.creation.MockSettingsImpl.validatedSettings(MockSettingsImpl.java:168) at org.mockito.internal.creation.MockSettingsImpl.confirm(MockSettingsImpl.java:162) at org.mockito.internal.MockitoCore.mock(MockitoCore.java:64) at org.mockito.Mockito.mock(Mockito.java:1687) at org.mockito.Mockito.mock(Mockito.java:1600) at com.xythos.client.drive.cachedtree.CachedTreeTest.setUp(CachedTreeTest.java:51) Caused by: …
93 mockito 

4
Mockito-Rückrufe und Abrufen von Argumentwerten
Ich habe kein Glück, dass Mockito Funktionsargumentwerte erfasst! Ich verspotte einen Suchmaschinenindex und anstatt einen Index zu erstellen, verwende ich nur einen Hash. // Fake index for solr Hashmap<Integer,Document> fakeIndex; // Add a document 666 to the fakeIndex SolrIndexReader reader = Mockito.mock(SolrIndexReader.class); // Give the reader access to the fake …

5
Verspotten Sie einen Konstruktor mit Parameter
Ich habe eine Klasse wie folgt: public class A { public A(String test) { bla bla bla } public String check() { bla bla bla } } Die Logik im Konstruktor A(String test)und check()sind die Dinge, die ich verspotten möchte. Ich möchte alle Aufrufe wie: new A($$$any string$$$).check()Gibt eine Dummy-Zeichenfolge …

3
So passen Sie die an den Parameter der Klasse <T> übergebene Null mit Mockito an
Ich habe Methoden wie diese: public &lt;T&gt; method(String s, Class&lt;T&gt; t) {...} Dass ich überprüfen muss, ob dies nullan das zweite Argument übergeben wird, wenn Matcher für die anderen Parameter verwendet werden, habe ich folgendermaßen ausgeführt: @SuppressWarnings("unchecked") verify(client).method(eq("String"), any(Class.class)); Aber gibt es einen besseren Weg (ohne Warnungen zu unterdrücken)? Tstellt …

12
Wie man Methode e im Protokoll verspottet
Hier ist Utils.java meine zu testende Klasse und die folgende Methode wird in der UtilsTest-Klasse aufgerufen. Auch wenn ich mich über die unten gezeigte Log.e-Methode lustig mache @Before public void setUp() { when(Log.e(any(String.class),any(String.class))).thenReturn(any(Integer.class)); utils = spy(new Utils()); } Ich erhalte die folgende Ausnahme java.lang.RuntimeException: Method e in android.util.Log not mocked. …
80 android  junit  mockito 

3
Suchen statischer Importanweisungen für Mockito-Konstrukte
Ich versuche durch die Mauer zwischen mir und Mockito zu krachen. Ich habe mir die Haare ausgerissen, weil ich versucht habe, korrekte statische Importanweisungen für Mockito-Sachen zu erhalten. Sie würden denken, jemand würde einfach eine Tabelle hochwerfen und sagen, dass anyInt () von org.mockito.Matchers stammt und when () von org.mockito.Mockito …

6
Ist es möglich, Mockito in Kotlin zu verwenden?
Das Problem, mit dem ich konfrontiert bin, ist die Matchers.anyObject()Rückkehr null. Wenn eine Methode verspottet wird, die nur nicht nullfähige Typen akzeptiert, wird die Ausnahme "Sollte nicht null sein" ausgelöst. `when`(mockedBackend.login(anyObject())).thenAnswer { invocationOnMock -&gt; someResponse } Verspottete Methode: public open fun login(userCredentials: UserCredentials): Response
78 java  mocking  mockito  kotlin 

7
Mockito, JUnit und Spring
Ich habe erst heute angefangen, etwas über Mockito zu lernen. Ich habe einen einfachen Test geschrieben (mit JUnit, siehe unten), aber ich kann nicht herausfinden, wie ich Scheinobjekte in Spring's verwalteten Beans verwenden kann. Was sind Best Practices für die Arbeit mit Spring ? Wie soll ich meiner Bohne eine …

4
Mock oder Stub für verketteten Anruf
protected int parseExpire(CacheContext ctx) throws AttributeDefineException { Method targetMethod = ctx.getTargetMethod(); CacheEnable cacheEnable = targetMethod.getAnnotation(CacheEnable.class); ExpireExpr cacheExpire = targetMethod.getAnnotation(ExpireExpr.class); // check for duplicate setting if (cacheEnable.expire() != CacheAttribute.DO_NOT_EXPIRE &amp;&amp; cacheExpire != null) { throw new AttributeDefineException("expire are defined both in @CacheEnable and @ExpireExpr"); } // expire time defined in @CacheEnable …

18
Mockito - NullpointerException beim Stubben der Methode
Also fing ich an, Tests für unser Java-Spring-Projekt zu schreiben. Was ich benutze, ist JUnit und Mockito. Es heißt, wenn ich die Option when () ... thenReturn () verwende, kann ich Dienste verspotten, ohne sie oder so zu simulieren. Ich möchte also Folgendes festlegen: when(classIwantToTest.object.get().methodWhichReturnsAList(input))thenReturn(ListcreatedInsideTheTestClass) Aber egal welche when-Klausel ich …

12
Die Scheininstanz ist nach der @ Mock-Annotation null
Ich versuche diesen Test auszuführen: @Mock IRoutingObjHttpClient routingClientMock; @Mock IRoutingResponseRepository routingResponseRepositoryMock; @Test public void testSendRoutingRequest() throws Exception { CompleteRoutingResponse completeRoutingResponse = new CompleteRoutingResponse(); completeRoutingResponse.regression_latencyMillis = 500L; Mockito.when(routingClientMock.sendRoutingRequest(any(RoutingRequest.class))).thenReturn(completeRoutingResponse); RoutingObjHttpClientWithReRun routingObjHttpClientWithReRun = new RoutingObjHttpClientWithReRun (routingClientMock, routingResponseRepositoryMock); ... } aber ich bekomme NullPointerException für: Mockito.when(routingClientMock. Was vermisse ich?

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.