2011-01-13 7 views
1

Ich dachte, ist es möglich, das ganze Objekt Verhalten mit EasyMock, aber in einer Weise, die einmal mit allen erwarteten Werten und Ergebnissen verkündet erklärt wird mehrfach verwendet, ohne sich um die Reihenfolge der Anfragen kümmern?Easy Mock-Verhalten, während angefordert

Der Zweck dafür ist, eine Instanz von mock zum Beispiel in JUnit test @BeforeClass zu erstellen und sie in mehreren @ Test-Methoden zu verwenden.

Vielen Dank im Voraus für jede Eingabe,

Grüße, P.

Antwort

3

Wenn Sie bei der Überprüfung der Anrufe an die Mock nicht interessiert sind, und Ihr einziges Ziel ist es, dass, wenn eine bestimmte Methode auf, um sicherzustellen, der Schein wird aufgerufen, es wird immer das gleiche gewünschte Ergebnis zurückgeben, Sie können es mit andStubReturn() konfigurieren, z

expect(mock.getMeaningOfLifeUniverseAndEverything()).andStubReturn(42); 
+0

Exacly was ich brauchte, ich schätze es sehr. Oben! – redbull

2

Ich glaube, du wirklich zwei Dinge wollen:

  1. Die Fähigkeit, aus der Ordnung verspottet Methoden zu verwenden, die die Standard-EasyMock ist (nicht-Strict-Modus),
  2. Die Fähigkeit, verspottete Methoden beliebig oft zu verwenden.

Sie tun, um die letztere wie folgt aus:

expect(someMock.someMethod()).anyTimes().andReturn(someValue); 

Wenn Ihre Methode unterschiedliche Argumente jedes Mal bekommen sie genannt wird, können Sie die ANYOBJECT() -Methode verwenden Sie den mitgelieferten Argument zu ignorieren.