Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Modulair Testen met JUnit | Backendapplicaties Testen
Spring Boot Backend

bookModulair Testen met JUnit

Toen we de architectuur van de applicatie bespraken, hebben we de test-directory overgeslagen, die bedoeld is voor testen. Nu bekijken we nauwkeuriger hoe deze testen kunnen worden geschreven en wat daarvoor nodig is.

Basisconcepten

Voor testen gebruiken we de JUnit-bibliotheek. Dit is een van de meest populaire frameworks voor unit testing in Java-applicaties. Het is eenvoudig te gebruiken en te integreren, vooral met Spring Boot.

Om JUnit te gebruiken, moeten we een dependency toevoegen aan ons pom.xml-bestand.

Nu zijn we klaar om onze eerste test in onze applicatie te schrijven!

Test Schrijven

Nu zullen we een test schrijven die niet direct gerelateerd is aan onze applicatie, maar die je zal helpen het concept van testen te begrijpen.

In Spring Boot worden tests doorgaans geplaatst in de map src/test/java, die automatisch wordt aangemaakt bij het initialiseren van het project. Hier kunnen we onze test aanmaken.

Laten we een klasse aanmaken met de naam SimpleTest, en daarin kunnen we een testmethode aanmaken genaamd testSum().

SimpleTest.

SimpleTest.

copy
123456789101112
public class SimpleTest { // This method tests the sum of two integers. @Test public void testSum() { // Perform the sum of 2 and 2 and store the result in a variable. int result = 2 + 2; // Assert that the result is equal to 4. assertEquals(4, result); } }

De @Test annotatie in JUnit geeft aan dat de methode een test is en moet worden uitgevoerd tijdens het testproces.

Binnen de test wordt een assertie gebruikt: assertEquals(4, result), waarmee wordt gecontroleerd of het berekeningsresultaat overeenkomt met de verwachte waarde. Als het result niet aan de verwachtingen voldoet, wordt de test als onsuccesvol beschouwd, wat wijst op een probleem in de programmatische logica.

Door onze test uit te voeren, kunnen we zien dat deze succesvol is geslaagd!

Regels voor het schrijven van tests

Bij unittests is het belangrijk om een duidelijk en gestructureerd naamgevingssysteem voor klassen en methoden te hanteren, zodat tests leesbaar en eenvoudig te onderhouden zijn.

Klassenamen

De naam van de klasse die getest wordt, dient de suffix Test te bevatten. Bijvoorbeeld, als we een klasse met de naam BookController testen, zou de bijbehorende testklasse geheten BookControllerTest.

Methodebenaming

Testmethoden dienen beschrijvende namen te hebben, zodat iedereen die ze leest kan begrijpen wat er wordt getest. Een goede naamgevingsconventie bevat: (Wat wordt getest) _ (Onder welke voorwaarden) _ (Verwacht resultaat).

testCreateUser_whenInputIsValid_shouldReturnCreatedUser

In deze testnaam geeft testCreateUser aan dat het proces van het aanmaken van een gebruiker wordt getest. Het volgende deel, whenInputIsValid, beschrijft de voorwaarden waaronder de test wordt uitgevoerd — specifiek wanneer de gebruikersinvoer geldig is. Ten slotte specificeert shouldReturnCreatedUser het verwachte resultaat — de methode moet de aangemaakte gebruiker retourneren.

Samenvatting

Unit testing met JUnit maakt het mogelijk om de correctheid van afzonderlijke onderdelen van een applicatie in isolatie te verifiëren, wat zorgt voor hoge codekwaliteit en systeemstabiliteit bij wijzigingen.

JUnit biedt handige tools voor het schrijven, uitvoeren en organiseren van tests, waardoor het de primaire keuze is voor het testen van Java-applicaties, inclusief Spring Boot.

1. Wat doet de annotatie @Test in JUnit?

2. Welke naamgevingsconventie moet worden gebruikt voor testklassen in JUnit?

question mark

Wat doet de annotatie @Test in JUnit?

Select the correct answer

question mark

Welke naamgevingsconventie moet worden gebruikt voor testklassen in JUnit?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Suggested prompts:

What are the steps to write a basic test using JUnit?

Can you explain how to organize test classes and methods effectively?

What are some best practices for naming test methods in Java?

Awesome!

Completion rate improved to 3.45

bookModulair Testen met JUnit

Veeg om het menu te tonen

Toen we de architectuur van de applicatie bespraken, hebben we de test-directory overgeslagen, die bedoeld is voor testen. Nu bekijken we nauwkeuriger hoe deze testen kunnen worden geschreven en wat daarvoor nodig is.

Basisconcepten

Voor testen gebruiken we de JUnit-bibliotheek. Dit is een van de meest populaire frameworks voor unit testing in Java-applicaties. Het is eenvoudig te gebruiken en te integreren, vooral met Spring Boot.

Om JUnit te gebruiken, moeten we een dependency toevoegen aan ons pom.xml-bestand.

Nu zijn we klaar om onze eerste test in onze applicatie te schrijven!

Test Schrijven

Nu zullen we een test schrijven die niet direct gerelateerd is aan onze applicatie, maar die je zal helpen het concept van testen te begrijpen.

In Spring Boot worden tests doorgaans geplaatst in de map src/test/java, die automatisch wordt aangemaakt bij het initialiseren van het project. Hier kunnen we onze test aanmaken.

Laten we een klasse aanmaken met de naam SimpleTest, en daarin kunnen we een testmethode aanmaken genaamd testSum().

SimpleTest.

SimpleTest.

copy
123456789101112
public class SimpleTest { // This method tests the sum of two integers. @Test public void testSum() { // Perform the sum of 2 and 2 and store the result in a variable. int result = 2 + 2; // Assert that the result is equal to 4. assertEquals(4, result); } }

De @Test annotatie in JUnit geeft aan dat de methode een test is en moet worden uitgevoerd tijdens het testproces.

Binnen de test wordt een assertie gebruikt: assertEquals(4, result), waarmee wordt gecontroleerd of het berekeningsresultaat overeenkomt met de verwachte waarde. Als het result niet aan de verwachtingen voldoet, wordt de test als onsuccesvol beschouwd, wat wijst op een probleem in de programmatische logica.

Door onze test uit te voeren, kunnen we zien dat deze succesvol is geslaagd!

Regels voor het schrijven van tests

Bij unittests is het belangrijk om een duidelijk en gestructureerd naamgevingssysteem voor klassen en methoden te hanteren, zodat tests leesbaar en eenvoudig te onderhouden zijn.

Klassenamen

De naam van de klasse die getest wordt, dient de suffix Test te bevatten. Bijvoorbeeld, als we een klasse met de naam BookController testen, zou de bijbehorende testklasse geheten BookControllerTest.

Methodebenaming

Testmethoden dienen beschrijvende namen te hebben, zodat iedereen die ze leest kan begrijpen wat er wordt getest. Een goede naamgevingsconventie bevat: (Wat wordt getest) _ (Onder welke voorwaarden) _ (Verwacht resultaat).

testCreateUser_whenInputIsValid_shouldReturnCreatedUser

In deze testnaam geeft testCreateUser aan dat het proces van het aanmaken van een gebruiker wordt getest. Het volgende deel, whenInputIsValid, beschrijft de voorwaarden waaronder de test wordt uitgevoerd — specifiek wanneer de gebruikersinvoer geldig is. Ten slotte specificeert shouldReturnCreatedUser het verwachte resultaat — de methode moet de aangemaakte gebruiker retourneren.

Samenvatting

Unit testing met JUnit maakt het mogelijk om de correctheid van afzonderlijke onderdelen van een applicatie in isolatie te verifiëren, wat zorgt voor hoge codekwaliteit en systeemstabiliteit bij wijzigingen.

JUnit biedt handige tools voor het schrijven, uitvoeren en organiseren van tests, waardoor het de primaire keuze is voor het testen van Java-applicaties, inclusief Spring Boot.

1. Wat doet de annotatie @Test in JUnit?

2. Welke naamgevingsconventie moet worden gebruikt voor testklassen in JUnit?

question mark

Wat doet de annotatie @Test in JUnit?

Select the correct answer

question mark

Welke naamgevingsconventie moet worden gebruikt voor testklassen in JUnit?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 5. Hoofdstuk 2
some-alt