[JAVA] Testen Sie private Methoden in JUnit

Verfahren

  1. Erstellen Sie eine Instanz der Implementierungsklasse
  2. Erstellen Sie eine Instanz der privaten Methode
  3. Ermöglichen Sie den Zugriff auf private Methoden
  4. Übergeben Sie die Instanz- und Methodenargumente der Implementierungsklasse an die instanziierte Methode

Beispielcode

TargetClass.java


private String privateMethod(String message) {
	return "Input: " + message;
}

TargetClassTest.java


@Test
public void privateMethodTest() {

	// 1.Erstellen Sie eine Instanz der Implementierungsklasse
	TargetClass targetClass = new TargetClass();

	// 2.Erstellen Sie eine Instanz einer privaten Methode
	Method privateMethod = TargetClass.class.getDeclaredMethod("privateMethod", String.class);

	// 3.Ermöglichen Sie den Zugriff auf private Methoden
	privateMethod.setAccessible(true);

	// 4.Übergeben Sie die Instanz- und Methodenargumente der Implementierungsklasse an die instanziierte Methode
	String actual = (String) privateMethod.invoke(targetClass, "Oh my god.");
	String expected = "Input: Oh my god.";

	// Assert
	assertEquals(expected, actual);
}

Recommended Posts

Testen Sie private Methoden in JUnit
Testen Sie private Methoden in JUnit
[Java] Testen Sie private Methoden mit JUnit
Informationen zu Validierungsmethoden in JUnit
So testen Sie eine private Methode, die ein Array- oder Argument variabler Länge in JUnit verwendet
Wenn Sie die Testabdeckung privater Methoden in JUnit erfüllen möchten
JUnit-Testbericht in Maven ausgeben
Beachten Sie beim Testen privater Methoden in JUnit
So filtern Sie den JUnit-Test in Gradle
Refactoring in JUnit
So testen Sie den privaten Bereich mit JUnit
JUnit 5: Wie man Testfälle in enum schreibt
Visualisieren Sie die in TestNG ausgeführte Testmethode im Listener
Mischen Sie Testfälle mit JUnit 5 und Standardmethoden
Machen Sie einen Unit-Test mit Junit.
Rufen Sie den Namen des Testfalls in der JUnit-Testklasse ab
Implementieren Sie Test Double in JUnit, ohne externe Bibliotheken zu verwenden
[Java] JUnit4-Testfallbeispiel
Testen Sie die Web-API mit junit
Hilfsmethoden im Gerät verfügbar
Überprüfen Sie die private Methode der Java9-Schnittstelle
[JUnit] Testen Sie die ausgelöste Ausnahme
Verspotten Sie statische Methoden in Mockito 3.4
[Spring Boot] Bis @Autowired in der Testklasse [JUnit5] ausgeführt wird
Implementieren Sie einen tabellengesteuerten Test in Java 14
Über häufig verwendete Methoden in der Entwicklung
Unterschiede in den Split-Methoden von StringUtils
Test-API, die häufig in AssertJ verwendet wird
Häufig verwendete Methoden in Active Record
Was sind die Regeln in JUnit?
Testen Sie den Spring Framework Controller mit Junit
Ruby-Methoden, die häufig in Rails verwendet werden
So testen Sie eine private Methode und verspotten sie teilweise in Java