Testen Sie die private Methode in Java
Wenn Sie als Tester arbeiten, können Sie viele Testoperationen an dem gegebenen Code durchführen. Aber manchmal ist die Durchführung einer Testoperation nicht zugänglich, wenn Sie eine Klasse haben, die eine private
Methode enthält.
Eine private
Methode ist eine Methode, auf die von aussen nicht zugegriffen werden kann, was bedeutet, dass Sie sie nicht von aussen aufrufen können. Es ist nur für die internen Elemente der Klasse verfügbar.
Es wird nur auf den internen Aufruf reagieren, aber es gibt eine Idee, mit der Sie schnell eine private
Methode testen können. Dieser Artikel zeigt, wie wir eine private
Methode testen können.
Testen Sie die private
Methode in Java
Angenommen, wir haben eine Klasse wie die folgende, die wir testen müssen:
class MyClass {
private int Sum(int a, int b) { // method is private
return a + b;
}
}
Wie wir sehen können, hat der obige Code eine private
Methode namens Sum()
. Mal sehen, was passiert, wenn wir versuchen, die Methode mit einer anderen Klasse namens Test
zu testen.
public class Test {
public static void main(String[] args) {
// Created an object for the class "MyClass"
MyClass mc = new MyClass();
// Error: Called the private method externally
System.out.println("The result is: " + mc.Sum(4, 5));
}
}
Es wird Sie mit dem folgenden Fehler zurückgeben:
error: Sum(int,int) has private access in MyClass
Da die Sum()
eine private
Methode in der Klasse MyClass
ist, können wir von aussen nicht darauf zugreifen. Die einzige Möglichkeit, dies zu überprüfen, besteht nun darin, eine öffentliche
Methode in die Klasse MyClass
aufzunehmen, die die Methode Sum()
aufruft.
Die öffentliche
Methode sieht wie folgt aus:
public int NewSum(int a, int b) {
// A public method that can call the private method internally.
return Sum(a, b);
}
Die obige Methode ruft die Methode Sum()
auf, da sie sich innerhalb der Klasse MyClass
befindet. Nun sieht die Vollversion der Klasse MyClass
so aus:
class MyClass {
private int Sum(int a, int b) { // Private method
return a + b;
}
public int NewSum(int a, int b) { // Public method
return Sum(a, b);
}
}
Nach dem Update von MyClass
können Sie nun die private
Methode Sum()
testen. Aber Sie müssen die öffentliche
Methode NewSum()
aus dem Objekt von MyClass
aufrufen.
Jetzt sieht unsere aktualisierte Testklasse wie folgt aus:
class Test {
public static void main(String[] args) {
// Created an object for the class "MyClass"
MyClass mc = new MyClass();
// Called the public method "NewSum()"
System.out.println("The result is: " + mc.NewSum(4, 5));
}
}
Im obigen Code Fence können Sie sehen, dass wir die Klasse NewSum()
aus der Objektklasse MyClass
aufgerufen haben. Wenn die Methode Sum()
keinen Fehler oder Fehler aufweist, zeigt sie Ihnen die folgende Ausgabe:
The result is: 9
Oben haben wir die grundlegendste Methode zum Testen einer privaten
Methode geteilt und sehen, ob sie gut funktioniert.
Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.
LinkedIn