Ich benutze Mockito, um einige Komponententests zu schreiben. Ich lief in das folgende Szenario:Ausspionieren eines Objekts nach dem Gießen mit Mockito
public interface A extends ABase { }
wo ABase
eine Schnittstelle mit konkreten Methoden in es ist. Ich verwende Mockito.spy()
für eine Instanz von A, und ich möchte eine Methode foo()
in ABase
deklariert wird in einem Stück Code, den ich schreibe, zu überprüfen. Innerhalb dieses Codes wird A
in ABase
umgewandelt und foo()
wird aufgerufen. Ich erhalte jedoch ein Build-Fehler (Methode nicht gefunden) auf der Linie, wo ich versuchen und überprüfen foo()
wurde in meinem Test-Methode, wie folgt aufgerufen:
A bar = spy(new A());
//... (function I'm testing is called, A is cast to ABase and foo() called)
verify(bar, times(1)).foo(); //problem line, foo not found
Irgendwelche Vorschläge, was zu tun? Vielen Dank!
EDIT: Es gab einige Fehler in meiner ursprünglichen Frage. Ich entschuldige mich, es sollte jetzt behoben werden.
Mein Fehler, ich habe das Interface-Schlüsselwort übersehen, als ich den Code angeschaut habe. Ich war auch ziemlich verwirrt, als ich es betrachtete. Auch "A" war ein Tippfehler, Sie haben Recht. Es kompiliert immer noch nicht mit diesen beiden Dingen. –
@VaishakLalsangi, könnten Sie mehr von Ihrem Quellcode bereitstellen? Ich habe es nur auf einige meiner Quellen überprüft und es hat wie erwartet funktioniert. – Brian