Mit der kontinuierlichen Entwicklung der Softwareentwicklungsbranche haben Unit-Tests und Integrationstests bei Entwicklern immer mehr Aufmerksamkeit auf sich gezogen. Diese Testmethoden können Entwicklern helfen, Probleme im Code schnell zu finden und die Softwarequalität zu verbessern.
Spring Boot ist ein sehr beliebtes Java-Entwicklungsframework, das Entwicklern hilft, schnell Anwendungen zu erstellen. JUnit ist ein Unit-Testing-Framework für die Programmiersprache Java, das Entwicklern hilft, effiziente Unit-Tests zu schreiben. In diesem Artikel erkläre ich, wie man Unit- und Integrationstests mit Spring Boot und JUnit erstellt.
Unit-Testing ist das Testen der kleinsten Codeeinheit in der Anwendung. In der Welt der Java-Programmierung testet Unit-Test normalerweise eine Methode oder eine Klasse. In einer Spring Boot-Anwendung können Unit-Tests Komponenten wie Controller, Dienste, Repositorys usw. testen.
1.1 Eine Spring Boot-Anwendung erstellen
Zuerst müssen wir eine Spring Boot-Anwendung erstellen. Hier ist ein einfaches Beispiel:
@SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }
Die Annotation @SpringBootApplication ist die Kernannotation des Spring Boot-Kontexts, die die Annotationen @EnableAutoConfiguration und @ComponentScan enthält. Diese Beispielanwendung verfügt nur über eine Hauptmethode.
1.2 Einen Unit-Test schreiben
Als nächstes schreiben wir einen einfachen Unit-Test, um eine Methode in einer Klasse zu testen.
public class GreetingServiceTest { private GreetingService greetingService; @Before public void setUp() { greetingService = new GreetingService(); } @Test public void testGreeting() { String result = greetingService.greet("John"); assertEquals("Hello John", result); } }
Dies ist ein sehr einfaches Unit-Test-Beispiel. Wir haben eine GreetingServiceTest-Klasse erstellt und darin eine testGreeting-Methode geschrieben. In der setUp-Methode erstellen wir ein GreetingService-Objekt. In der testGreeting-Methode rufen wir die GreetingService.greet("John")-Methode auf und verwenden die AssertEquals-Methode, um zu überprüfen, ob das Ergebnis „Hello John“ ist.
1.3 Unit-Tests ausführen
Um Unit-Tests auszuführen, müssen wir mit der rechten Maustaste auf die Testklasse in der IDE klicken und „Test ausführen“ auswählen. Nach Abschluss des Tests sehen wir die Ergebnisse des Testlaufs.
Integrationstests testen einen bestimmten Teil der gesamten Anwendung oder die gesamte Anwendung. In Spring Boot können wir SpringBootTest-Annotationen verwenden, um Integrationstests zu schreiben.
2.1 Integrationstest erstellen
Zuerst müssen wir eine Integrationstestklasse erstellen.
@RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class GreetingControllerIntegrationTest {
@RunWith- und @SpringBootTest-Annotationen sind die Kernanmerkungen des Spring Boot-Integrationstests. Das webEnvironment-Attribut ist die Umgebung der Spring Boot-Anwendung, die MOCK, RANDOM_PORT oder DEFINED_PORT sein kann. In diesem Beispiel haben wir RANDOM_PORT ausgewählt. In diesem Beispiel wird unsere GreetingController-Klasse getestet. Wir werden Spring Boot TestRestTemplate in unseren Tests verwenden, um die API aufzurufen und die Ergebnisse zu testen.
2.2 Einen Integrationstest schreiben
Als nächstes schreiben wir einen einfachen Integrationstest, um unseren GreetingController zu testen.
@Test public void testGreeting() { ResponseEntity<String> response = new TestRestTemplate().getForEntity( "http://localhost:"+ port +"/greeting?name=John", String.class); assertEquals(HttpStatus.OK, response.getStatusCode()); assertEquals("Hello John", response.getBody()); }
In diesem Beispiel verwenden wir TestRestTemplate, um die API-Schnittstelle aufzurufen. Wir verwenden die Methode „getForEntity“, um die Antwort abzurufen, und die Methode „assertEquals“, um zu überprüfen, ob das Ergebnis „Hello John“ ist.
2.3 Integrationstests ausführen
Um Integrationstests auszuführen, müssen wir mit der rechten Maustaste auf die Testklasse in der IDE klicken und „Test ausführen“ auswählen. Nach Abschluss des Tests sehen wir die Ergebnisse des Testlaufs.
Zusammenfassung
In diesem Artikel haben wir vorgestellt, wie man Spring Boot und JUnit zum Erstellen von Unit- und Integrationstests verwendet. Unit-Tests sind eine Testmethode zum Testen der kleinsten Codeeinheit in einer Anwendung. Integrationstests sind eine Testmethode, die die gesamte Anwendung oder einen Teil davon testet. Unit-Tests und Integrationstests können uns helfen, Probleme im Code zu finden und die Qualität der Anwendung zu verbessern.
Das obige ist der detaillierte Inhalt vonSo erstellen Sie Unit- und Integrationstests mit Spring Boot und JUnit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!