Testing i praksis: JUnit, Mockito og integrasjonstester · leksjon

JUnit-assertioner og kjøring

Lær å bruke JUnits assertion-metoder til å validere testresultater og kjøre tester effektivt i IDE-en din.

Leksjon 3 av 411 trinn

JUnit-assertioner og kjøring er en gratis leksjon i Testing i praksis: JUnit, Mockito og integrasjonstester på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Testing i praksis: JUnit, Mockito og integrasjonstester, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Testing i praksis: JUnit, Mockito og integrasjonstester inneholder totalt 4 leksjoner.

Hva er assertions?

Assertions er kontrollene som avgjør om en test består eller ikke: De verifiserer at en betingelse er sann. Hvis den ikke er det, feiler testen og markerer problemet.

Kontrollere likhet

assertEquals() er arbeidshesten: Gi den den forventede verdien og den faktiske verdien, så består testen bare når de samsvarer.

`assertEquals` i praksis

Her verifiserer assertEquals en sum: Den forventede verdien sammenlignes med det metoden returnerer. Samsvar betyr at testen består.

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

public class MathUtilsTest {

    // A simple method to test
    int add(int a, int b) {
        return a + b;
    }

    @Test
    void testAddMethod() {
        // Expected result: 5
        int expected = 5;
        // Actual result from our method
        int actual = add(2, 3);
        
        // Assert that expected and actual are the same
        assertEquals(expected, actual, "2 + 3 should be 5");
    }
}

Kontrollere boolske betingelser

For å kontrollere logiske resultater bruker du assertTrue og assertFalse – de består når betingelsen henholdsvis er sann eller usann.

`assertTrue` i praksis

Her bekrefter assertTrue at et tall er positivt – en enkel måte å validere en hvilken som helst boolsk betingelse på.

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

public class NumberCheckerTest {

    // A simple method to test
    boolean isPositive(int number) {
        return number > 0;
    }

    @Test
    void testIsPositive() {
        int num = 10;
        // Assert that num is positive
        assertTrue(isPositive(num), num + " should be positive");
    }
}

Håndtere null-verdier

For null-kontroller bruker du assertNotNull og assertNull – avgjørende for å oppdage NullPointerExceptions før de skaper problemer.

Demo av `assertNotNull`

Her verifiserer assertNotNull og assertNull et oppslag som returnerer en bruker eller null når ingen blir funnet.

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertNull;

public class UserServiceTest {

    // Dummy method simulating fetching a user
    String getUserById(int id) {
        if (id == 1) {
            return "Alice"; // User found
        }
        return null; // User not found
    }

    @Test
    void testExistingUser() {
        String user = getUserById(1);
        assertNotNull(user, "User with ID 1 should exist");
    }

    @Test
    void testNonExistingUser() {
        String user = getUserById(99);
        assertNull(user, "User with ID 99 should not exist");
    }
}

Kjøre JUnit-tester

Det er enkelt å kjøre tester: De fleste IDE-er har innebygd støtte for JUnit – høyreklikk på en klasse eller metode, velg Run og les resultatene i resultatvinduet.

Forstå bestått/feilet

Det er enkelt å lese resultatene: grønt betyr at alle testene bestod, mens rødt betyr at en assertion feilet, og at det sannsynligvis finnes en feil. Klikk på en feil for å se detaljer.

Assertion-utfordring

Se på følgende enkle metode og test. Hva blir resultatet når du kjører denne testen?

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

public class SimpleCalculatorTest {
    int subtract(int a, int b) {
        return a - b;
    }

    @Test
    void testSubtract() {
        assertEquals(10, subtract(15, 5));
    }
}

Oppsummering: Assertions og kjøring

Du kan nå validere kode med JUnit-assertions – assertEquals, assertTrue, assertNull og flere – og kjøre tester direkte i IDE-en.

Gratis å komme i gang

Lær deg Testing i praksis: JUnit, Mockito og integrasjonstester med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
12
Leksjoner
48

Ofte stilte spørsmål

Er leksjonen «JUnit-assertioner og kjøring» gratis?

Ja – hele teksten i «JUnit-assertioner og kjøring» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Testing i praksis: JUnit, Mockito og integrasjonstester-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Testing i praksis: JUnit, Mockito og integrasjonstester inneholder totalt 4 leksjoner.

Hva lærer jeg i «JUnit-assertioner og kjøring»?

Lær å bruke JUnits assertion-metoder til å validere testresultater og kjøre tester effektivt i IDE-en din. Du øver på Testing i praksis: JUnit, Mockito og integrasjonstester med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Testing i praksis: JUnit, Mockito og integrasjonstester?

Ingen tidligere erfaring er nødvendig. Testing i praksis: JUnit, Mockito og integrasjonstester på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «JUnit-assertioner og kjøring»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Testing i praksis: JUnit, Mockito og integrasjonstester-leksjonen?

Ja. Alle Testing i praksis: JUnit, Mockito og integrasjonstester-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Introduksjon til enhetstesting
  2. Grunnleggende JUnit 5-annotasjoner
  3. JUnit-assertioner og kjøring
  4. Organisering av tester med @DisplayName og nesting
← Tilbake til Testing i praksis: JUnit, Mockito og integrasjonstester