Wie zum Hohn super-Klasse die Methode mit Mockito oder anyother relavent java-framework
Mein Szenario ist wie folgt
class SuperClass{
public void run(){
System.out.println("I am running in Super class");
}
}
class ChildClass extends SuperClass{
public void childRunner(){
System.out.println("Step 1");
System.out.println("Step 2");
**run();**
System.out.println("Last Step");
}
}
Nun will ich verspotte die childRunner()
Methode der ChildClass
und da diese Methode ruft intern die super-Klasse-Methode, ich brauche etwas Hilfe/Stück code, wie mock das run()
Methode, die derzeit in den childRunner()
Methode der ChildClass
.
InformationsquelleAutor Ravi Kiran Y | 2015-05-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Idealerweise sollten Sie "favor composition over inheritance".
Wenn Sie nicht über diese option, die Sie nutzen könnten
doNothing
die im Grunde sagt, Mockito, nichts zu tun, wenn eine Methode in einem mock/spy-Objekt aufgerufen wird. Dies wurde auch diskutiert, hierFolgenden code-Beispiel soll helfen,
Ausgabe:
In Fall, dass Sie verwenden, super.run(); das funktioniert nicht
InformationsquelleAutor user1121883
Hier ist ein Beispiel für eine Klasse, die eine andere Klasse erweitert und es hat einige andere Abhängigkeiten. In diesem Fall werde ich verschieben der Superklasse aufrufen, in die andere Methode und dann spotten die superclass-Methode " Aufrufer.
Wie Sie oben sehen können, ist der authenticate-Methode hat eine gewisse Logik, und rufen Sie dann in der Superklasse die Methode, so will ich verspotte die Oberklasse aufrufen und testen Sie, meine eigenen code-block. Hier ist meine test-Klasse:
InformationsquelleAutor cazador