[JAVA] [Spring Boot] Bis @Autowired in der Testklasse [JUnit5] ausgeführt wird

Dinge die zu tun sind

Führen Sie dies mit "SpringBoot + JUnit5" aus, bis Sie die Injektion des Konstruktormusters zum Zeitpunkt des Tests ausführen.

Weise

Es hat funktioniert, wenn ich "@ ExtendWith (SpringExtension.class)" und "@ SpringBootTest" gegeben habe.

Beispielcode

import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit.jupiter.SpringExtension;

@DisplayName("Testen Sie, um das Konstruktormuster zu verschieben")
@ExtendWith(SpringExtension.class)
@SpringBootTest
class AutowiredTest {

    private final AutowiredClass autowiredClass;

    private final String hoge;
    private final String fuga;

    @Autowired
    AutowiredTest(AutowiredClass autowiredClass) {
        this.autowiredClass = autowiredClass;

        hoge = "String";
        fuga = "String";
    }

    @Test
    @DisplayName("Einige testen")
    void uploadFile() {
        assertEquals(hoge, fuga);
    }
}

Ergänzung

Da es sich um JUnit5 handelt, können Sie verschiedene Dinge in die Klasse schreiben, ohne "public" hinzuzufügen. Außerdem wird der Konstruktor sogar "privat" injizieren.

Recommended Posts

[Spring Boot] Bis @Autowired in der Testklasse [JUnit5] ausgeführt wird
Was ist @Autowired im Spring Boot?
Testen Sie die Klasse mit Feldinjektion im Spring-Boot-Test, ohne den Spring-Container zu verwenden
Schreiben Sie den Testcode mit Spring Boot
[Spring Boot] Verspotten Sie die Inhalte, die außerhalb des Bereichs automatisch verdrahtet werden. [JUnit 5]
Formularklassenvalidierungstest mit Spring Boot
Autowired-Felder in einer Klasse, die TextWebSocketHandler in Spring Boot erbt, werden NULL
Führen Sie ein Spring Boot-Projekt mit VS-Code aus
Zeigen Sie die Gradle-Aufgabe im Spring Boot-Projekt an
Rufen Sie den in der Controller-Klasse von Spring Boot definierten Pfad als Liste ab
Geben Sie die statische Ressourcencodierung in Spring Boot an
[JUnit 5-kompatibel] Schreiben Sie einen Test mit JUnit 5 mit Spring Boot 2.2, 2.3
[JUnit 5] Schreiben Sie einen Validierungstest mit Spring Boot! [Parametrisierungstest]
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 1 beginnen
Bis Sie mit der Entwicklung mit Spring Boot in Eclipse 2 beginnen
Ich habe jetzt einen Test mit Spring Boot + JUnit 5 geschrieben
Warum die get-Methode in der Calendar-Klasse benötigt wird
Verwendung derselben Mapper-Klasse in mehreren Datenquellen mit Spring Boot + MyBatis
Spring Boot 1.x wird im nächsten Jahr EOL erreichen.
Der Fall, dass @Autowired in JUnit5 nicht verwendet werden konnte
Verwenden Sie Spring Test + Mockito + JUnit 4 für Spring Boot + Spring Retry Unit Test
Legen Sie den Kontextparameter in Spring Boot fest
Spring Boot 2 Multiprojekt mit Gradle
Führen Sie LIFF mit Spring Boot aus
Was ist die BufferedReader-Klasse?
Testen Sie private Methoden in JUnit
Testen Sie private Methoden in JUnit
[JUnit] Testen Sie die ausgelöste Ausnahme
Wichtige Änderungen in Spring Boot 1.5
Bis der Code ausgeführt wird
Spring Boot 2.2 unterstützt jetzt RSocket. Probieren Sie es aus
Beachten Sie, dass die Standardeinstellung für die Spring-Boot-Umleitung http ist
ProxyFactory ist praktisch, wenn Sie AOP mit Spring testen möchten!
Rufen Sie in Spring Boot eine Proxy-Instanz der Komponente selbst ab
Siehe das relative Umleitungsverhalten mit der Einstellung server.tomcat.use-relative-redirects in Spring Boot
Was ich bei der Migration von der Spring Boot 1.4-Serie zur 2.0-Serie getan habe
Was ich bei der Migration von der Spring Boot 1.5-Serie zur 2.0-Serie getan habe
Schreiben wir einen Testcode für die Anmeldefunktion mit Spring Boot
Spring Boot-Anwendungsentwicklung in Eclipse
Spring Boot zum ersten Mal
So führen Sie JUnit in Eclipse aus
Bis "Hallo Welt" mit Spring Boot
Implementieren Sie die REST-API mit Spring Boot
Verwenden Sie DBUnit für den Spring Boot-Test
Die Ereignisverarbeitung wird im Frühjahr durchgeführt.
JUnit-Testbericht in Maven ausgeben
Was sind die Regeln in JUnit?
Testen Sie den Spring Framework Controller mit Junit
Verwendung von Thymeleaf mit Spring Boot
Spring.messages.fallback-to-system-locale: false ist erforderlich, um message.properties für die i18n-Unterstützung von Spring boot als Standard festzulegen
Schritte zum Ausführen von Spring Boot beziehen sich auf die Werte in der Eigenschaftendatei
Fehler, wenn das in SpringWebFlux verwendete Mitglied der Entity-Klasse endgültig ist