ich eine Unit-Test schreibe mit JUnit + Mockito zu testen, eine Methode, wie:Mocking einen Anruf auf einer öffentlichen Methode einer abstrakten Klasse ohne die abstrakte Klasse Subklassen, mit Mockito prefererably
public someObject methodUnderTest(){
SomeObject obj = SomeAbstractClass.someMethod();
if(obj!=null){
obj.someOtherMethod();
}
return someThing;
}
Und ich möchte den Anruf auf abstract Class "SomeAbstractClass"
in obigem Codefragment erwähnt verspotten, so dass ich Anruf auf „obj“ wie überprüfen kann:
verify(SomeAbstractClass).someMethod();
verify(obj).someOtherMethod();
ich versucht habe, mit Mockito Features wie: Mockito.CALLS_REAL_METHODS Mockito. RETURNS_MOCKS
, aber sie funktionieren nicht aufgrund von Abhängigkeiten, die für die SomeAbstractClass nicht verfügbar sind.
Hinweis:
1) Someobject ist eine Schnittstelle.
2) Ich brauche eine Technik, um das obige Codefragment zu testen. Ich bin gezwungen, das obige Codefragment zu verwenden und kann das Codefragment nicht ändern.
Danke miheys für Ihre Hilfe. Ich habe genau das Gleiche gemacht. –