Kompilierfehler bei der Verwendung von EasyMock.expect () in einem sehr einfachen Beispiel?

8

Ich versuche ein sehr einfaches Beispiel mit EasyMock , aber ich kann es einfach nicht erstellen. Ich habe folgenden Testfall:

%Vor%

Allerdings bekomme ich den folgenden Fehler in der EasyMock.expect(... -Zeile:

%Vor%

Kann mir jemand in die richtige Richtung zeigen? Ich bin völlig verloren.

    
Bjarke Freund-Hansen 26.08.2011, 12:47
quelle

4 Antworten

10

Wenn Sie void -Methoden testen möchten, rufen Sie die Methode auf, die Sie auf Ihrem Mock testen möchten. Rufen Sie dann die Methode expectLastCall() auf.

Hier ist ein Beispiel:

%Vor%     
Jasper 26.08.2011, 13:00
quelle
8

Da Ihre Methode send () void zurückgibt, rufen Sie einfach die Mock-Methode mit erwarteten Werten auf und wiederholen Sie:

%Vor%     
Biju Kunjummen 26.08.2011 12:53
quelle
0

Da Sie sich über eine Schnittstelle lustig machen, besteht der einzige Zweck, eine Methode zu verspotten, darin, ein Ergebnis von dieser Methode zurückzugeben. In diesem Fall scheint der Rückgabetyp Ihrer Methode "send" ungültig zu sein. Die "EasyMock.expect" -Methode ist generisch und erwartet einen Rückgabetyp, der den Compiler dazu veranlasst, Ihnen mitzuteilen, dass Sie eine void-Methode nicht verwenden können, da sie keinen Rückgabetyp hat.

Weitere Informationen finden Sie in der EasyMock-API-Dokumentation unter Ссылка .

    
Joshua Marble 26.08.2011 12:55
quelle
0

Sie können Methoden nicht mit einer void return auf diese Weise skripten; Lesen Sie diese Frage , um eine gute Antwort darüber zu erhalten, wie Sie das Verhalten Ihrer send -Methode überspielen können Ihr expected -Objekt.

    
Mike Partridge 26.08.2011 12:55
quelle