Mestrer test: JUnit, Mockito og integrationstest · Lektion

Grundlæggende JUnit 5-annotations

Udforsk vigtige JUnit 5-annotations som @Test, @BeforeEach og @AfterEach samt deres praktiske anvendelse.

Lektion 2 af 410 trin

Grundlæggende JUnit 5-annotations er en gratis Mestrer test: JUnit, Mockito og integrationstest-lektion på CoddyKit. Dette er lektion 2 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Mestrer test: JUnit, Mockito og integrationstest, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Mestrer test: JUnit, Mockito og integrationstest-kurset indeholder 4 lektioner i alt.

Hvad er JUnit-annoteringer?

I JUnit 5 er annoteringer markører, der fortæller køreren, hvordan dine test skal køres — blandt andet hvilke metoder der er testmetoder, samt hvordan opsætning og oprydning skal foregå.

Markering af test med @Test

Den centrale annotering er @Test. Sæt den over en metode, så kører JUnit den som en test og rapporterer, om den bestod eller fejlede.

Din første testmetode

Her ser du @Test i brug: en metode, der kontrollerer, at 1 + 1 er lig med 2. (Kontroller som assertEquals kommer i næste 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");
    }
}

Opsætning før hver test: @BeforeEach

@BeforeEach kører før hver testmetode og giver den en frisk, kendt tilstand — så dine test forbliver uafhængige og pålidelige.

@BeforeEach i praksis

Her nulstiller @BeforeEach en meddelelse, før hver test kører, så begge test starter fra den samme rene tilstand.

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);
    }
}

Oprydning efter hver test: @AfterEach

@AfterEach kører efter hver testmetode — perfekt til at lukke filer, frigive forbindelser eller nulstille tilstanden, så test ikke påvirker hinanden.

@AfterEach i praksis

Her rydder @AfterEach tilstanden op efter hver test og tømmer loggen, så den næste test starter 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
    }
}

Forstå testforløbet

Livscyklussen for hver test er fast: @BeforeEach, derefter @Test-metoden og til sidst @AfterEach — gentaget for hver test for at sikre isolation.

Kørselsrækkefølge

Arrangér følgende handlinger i den korrekte rækkefølge, som JUnit udfører dem for hver @Test-metode.

Opsummering: Vigtige JUnit-annoteringer

Du har lært det vigtigste: @Test markerer en test, @BeforeEach står for opsætningen, og @AfterEach rydder op. Nu kommer kontrollerne.

Gratis at komme i gang

Lær Mestrer test: JUnit, Mockito og integrationstest med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Grundlæggende JUnit 5-annotations” gratis?

Ja — hele teksten til “Grundlæggende JUnit 5-annotations” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Mestrer test: JUnit, Mockito og integrationstest-kurset, skal du opgradere til CoddyKit PRO. Mestrer test: JUnit, Mockito og integrationstest-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Grundlæggende JUnit 5-annotations”?

Udforsk vigtige JUnit 5-annotations som @Test, @BeforeEach og @AfterEach samt deres praktiske anvendelse. Du øver dig i Mestrer test: JUnit, Mockito og integrationstest med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Mestrer test: JUnit, Mockito og integrationstest?

Der kræves ingen tidligere erfaring. Mestrer test: JUnit, Mockito og integrationstest på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 4.

Hvor lang tid tager lektionen “Grundlæggende JUnit 5-annotations”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Mestrer test: JUnit, Mockito og integrationstest-lektion?

Ja. Alle Mestrer test: JUnit, Mockito og integrationstest-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Introduktion til unit-testing
  2. Grundlæggende JUnit 5-annotations
  3. JUnit-assertions og testkørsel
  4. Organisering af tests med @DisplayName og nesting
← Tilbage til Mestrer test: JUnit, Mockito og integrationstest