Java Academy · leksjon

Testing og utvidelser

Test med kanttilfeller og legg til små forbedringer. Hold eksemplene enkle og lette å lese.

Leksjon 3 av 38 trinn

Testing og utvidelser er en gratis leksjon i Java Academy på CoddyKit. Dette er leksjon 3 av 3. 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 Java Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Java Academy inneholder totalt 3 leksjoner.

Hvorfor teste?

Hvorfor teste? Små tester oppdager overraskelser tidlig. Vi starter med enkle inndata og legger til grensetilfeller trinn for trinn.

Normaltilfellet

Prøv først en kort setning med tydelige ord. Forvent at totalantallet stemmer, og at de vanligste ordene gir mening.

Grensetilfeller

Grensetilfeller: tom streng, bare mellomrom, bare tegnsetting, tall blandet med ord og gjentatte mellomrom. Ingen av tilfellene skal føre til krasj, og alle skal gi fornuftige opptellinger.

Normaliseringskontroll

Bruk en blanding av store og små bokstaver samt kommaer for å kontrollere normaliseringen. Etter konvertering til små bokstaver og rensing skal Hello og HELLO telles som samme ord.

Små utvidelser

Små utvidelser: ignorer svært korte ord som a eller an, gjør topplisten på N ord variabel, og skriv ut ord med samme antall i vilkårlig rekkefølge. Hold endringene minimale og lettleste.

Kode: små tester

Kjør: hvert eksempel skriver ut totalt antall og antall unike ord. Dette hjelper med å kontrollere håndteringen av tom tekst, mellomrom, tegnsetting og blandede bokstavstorrelser.

public class Main {
  public static void main(String[] args) {
    // Very small test set for beginners. Each case prints a short result.
    String[] samples = new String[] {
      "Hello world hello",
      "",                            // empty
      "   ",                         // spaces
      "Hello, HELLO, hello!",        // mixed case and punctuation
      "Numbers 1 2 3 and words",     // numbers and words
      "Only... punctuation!!!"       // punctuation only
    };

    for (int t = 0; t < samples.length; t = t + 1) {
      String text = samples[t];
      System.out.println("-- Case " + (t + 1) + " --");
      // 1) Lowercase
      String lower = text.toLowerCase();
      // 2) Replace non letters with spaces
      String cleaned = lower.replaceAll("[^a-z]+", " ");
      // 3) Split on spaces and filter empties
      String[] tokens = cleaned.trim().split("\\s+");

      java.util.Map<String, Integer> freq = new java.util.HashMap<>();
      int total = 0;
      for (int i = 0; i < tokens.length; i = i + 1) {
        String w = tokens[i];
        if (w.length() == 0) continue;
        // Optional tiny extension: skip one letter words like "a"
        if (w.length() == 1) continue;
        total = total + 1;
        Integer c = freq.get(w);
        if (c == null) freq.put(w, 1);
        else freq.put(w, c + 1);
      }

      // Print a very small summary (no top N here to keep it simple)
      System.out.println("Total words: " + total);
      System.out.println("Unique words: " + freq.size());
    }
  }
}

Normaliseringstest

Rask sjekk: Hvilke inndata egner seg best for å kontrollere normalisering av bokstavstorrelse og tegnsetting?

Oppsummering

Oppsummering: Vi testet normaltilfeller og grensetilfeller, og la deretter til små utvidelser, som å hoppe over enbokstavsord. Hold eksemplene korte og lettleste.

Gratis å komme i gang

Lær deg Java 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
104
Leksjoner
374

Ofte stilte spørsmål

Er leksjonen «Testing og utvidelser» gratis?

Ja – hele teksten i «Testing og utvidelser» 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 Java Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Java Academy inneholder totalt 3 leksjoner.

Hva lærer jeg i «Testing og utvidelser»?

Test med kanttilfeller og legg til små forbedringer. Hold eksemplene enkle og lette å lese. Du øver på Java Academy 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 Java Academy?

Ingen tidligere erfaring er nødvendig. Java Academy 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 3.

Hvor lang tid tar leksjonen «Testing og utvidelser»?

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 Java Academy-leksjonen?

Ja. Alle Java Academy-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. Krav og design
  2. Implementering
  3. Testing og utvidelser
← Tilbake til Java Academy