Testning på avancerad nivå: JUnit, Mockito och integrationstester · Lektion

Grundläggande JUnit 5-annoteringar

Utforska viktiga JUnit 5-annoteringar som @Test, @BeforeEach och @AfterEach samt deras praktiska användning.

Lektion 2 av 410 steg

Grundläggande JUnit 5-annoteringar är en gratis lektion i Testning på avancerad nivå: JUnit, Mockito och integrationstester på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Testning på avancerad nivå: JUnit, Mockito och integrationstester, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Testning på avancerad nivå: JUnit, Mockito och integrationstester innehåller totalt 4 lektioner.

Vad är JUnit-annoteringar?

I JUnit 5 är annoteringar markörer som talar om för testköraren hur testerna ska köras – de definierar testmetoder, förberedelser och rensning.

Markera tester med @Test

Den centrala annoteringen är @Test. Placera den ovanför valfri metod så kör JUnit den som ett test och rapporterar om det lyckades eller misslyckades.

Din första testmetod

Här ser du @Test i praktiken: en metod som hävdar att 1 + 1 är lika med 2. (Påståenden som assertEquals kommer i nästa lektion.)

package com.coddykit;

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

class SimpleTest {

    @Test
    void additionTest() {
        int result = 1 + 1;
        assertEquals(2, result, "1 + 1 should be 2");
    }
}

Förberedelser före varje test: @BeforeEach

@BeforeEach körs före varje testmetod och ger varje test ett nytt, känt tillstånd – så att testerna förblir oberoende och tillförlitliga.

@BeforeEach i praktiken

Här återställer @BeforeEach ett meddelande innan varje test körs, så att båda testerna startar från samma rena tillstånd.

package com.coddykit;

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertTrue;

class BeforeEachTest {

    String message;

    @BeforeEach
    void setup() {
        message = "Hello CoddyKit!";
        System.out.println("Setup called."); // For illustration
    }

    @Test
    void testMessageStartsWithHello() {
        assertTrue(message.startsWith("Hello"));
    }

    @Test
    void testMessageLength() {
        assertTrue(message.length() > 5);
    }
}

Rensning efter varje test: @AfterEach

@AfterEach körs efter varje testmetod – perfekt för att stänga filer, frigöra anslutningar eller återställa tillstånd så att testerna inte påverkar varandra.

@AfterEach i praktiken

Här river @AfterEach ned tillståndet efter varje test och rensar loggen så att nästa test startar rent.

package com.coddykit;

import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertTrue;

class AfterEachTest {

    StringBuilder log;

    @BeforeEach
    void setup() {
        log = new StringBuilder("Test started. ");
    }

    @Test
    void testLogAppendOne() {
        log.append("Action 1. ");
        assertTrue(log.toString().contains("Action 1"));
    }

    @Test
    void testLogAppendTwo() {
        log.append("Action 2. ");
        assertTrue(log.toString().contains("Action 2"));
    }

    @AfterEach
    void teardown() {
        System.out.println("Log after test: " + log.toString());
        log = null; // Simulate cleanup
    }
}

Förstå testflödet

Livscykeln för varje test är fast: @BeforeEach, sedan metoden @Test och därefter @AfterEach – detta upprepas för varje test för att garantera isolering.

Körningsordning

Ordna följande åtgärder i rätt ordning efter hur JUnit kör dem för varje metod med @Test.

Sammanfattning: Viktiga JUnit-annoteringar

Du har lärt dig grunderna: @Test markerar ett test, @BeforeEach förbereder och @AfterEach rensar upp. Härnäst kommer påståenden.

Gratis att börja

Lär dig Testning på avancerad nivå: JUnit, Mockito och integrationstester med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”Grundläggande JUnit 5-annoteringar” gratis?

Ja – hela texten till ”Grundläggande JUnit 5-annoteringar” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Testning på avancerad nivå: JUnit, Mockito och integrationstester, kan Ni uppgradera till CoddyKit PRO. Kursen i Testning på avancerad nivå: JUnit, Mockito och integrationstester innehåller totalt 4 lektioner.

Vad lär jag mig i ”Grundläggande JUnit 5-annoteringar”?

Utforska viktiga JUnit 5-annoteringar som @Test, @BeforeEach och @AfterEach samt deras praktiska användning. Ni övar på Testning på avancerad nivå: JUnit, Mockito och integrationstester med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Testning på avancerad nivå: JUnit, Mockito och integrationstester?

Du behöver inga förkunskaper. Utbildningen i Testning på avancerad nivå: JUnit, Mockito och integrationstester på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Grundläggande JUnit 5-annoteringar”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Testning på avancerad nivå: JUnit, Mockito och integrationstester-lektionen?

Ja. Varje Testning på avancerad nivå: JUnit, Mockito och integrationstester-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Introduktion till enhetstestning
  2. Grundläggande JUnit 5-annoteringar
  3. JUnit-assertioner och körning
  4. Organisera tester med @DisplayName och nästling
← Tillbaka till Testning på avancerad nivå: JUnit, Mockito och integrationstester