Programmering nivå 2

Kap 5.5 – Testning, dokumentation och reflektion

Kontrollera att projektet fungerar, beskriv hur det används och reflektera över arbetet.

Mål med lektionen

När du har arbetat klart med denna lektion ska du:

  • Förstå varför testning är en viktig del av programutveckling.
  • Kunna testa ditt program systematiskt med olika indata och kontrollera resultat.
  • Dokumentera din kod så att andra, och du själv, förstår den.
  • Reflektera över din arbetsprocess och vad du lärt dig under projektet.

Så här lär du dig bäst

Gå tillbaka till ditt projekt och tänk som en utomstående testare: vad kan gå fel? Vad händer om användaren matar in något oväntat? Dokumentera tydligt hur programmet fungerar och skriv kommentarer som förklarar syfte och funktion i viktiga delar. Skriv sedan en kort reflektion över vad du har lärt dig, vilka utmaningar du stött på och hur du löste dem.

Centrala begrepp

  • Testfall - Specifika situationer som testas i programmet, ofta med förväntat utfall.
  • Felhantering - Att identifiera och hantera problem, till exempel felaktig inmatning eller trasig databasanslutning.
  • Kommentarer - Förklarande text i koden som inte påverkar programmets funktion.
  • README - En textfil som beskriver programmet, dess syfte, funktion och hur man använder det.
  • Reflektion - Att tänka tillbaka på hur arbetet gått och vad man lärt sig.

1. Testa ditt program

Kontrollera vad som händer i både vanliga och ovanliga situationer. Testa till exempel:

  • Rätt och fel inmatning.
  • Tomma fält.
  • Specialtecken.
  • Extremt långa värden.
  • Avslut och avbrott.

Använd gärna en checklista där du skriver vad du testar, vilken indata du använder och vad du förväntar dig att programmet ska göra.

Testbeskrivning Indata Förväntat resultat Utfört
Lägg till post "Testnamn" Posten sparas Ja/Nej
Visa lista - Alla poster visas Ja/Nej
Sök efter tom sträng "" Felmeddelande visas Ja/Nej

2. Dokumentera koden

Kommentarer ska hjälpa läsaren att förstå syftet med koden. Det görs ofta på engelska i professionella projekt, men i den här kursen kan du välja svenska eller engelska.

def add_recipe():
    # Hämtar input från användaren och lägger till recept i databasen
    ...

Skapa också en README-fil för projektet. Den bör innehålla:

  • Programbeskrivning.
  • Funktioner.
  • Hur man kör programmet.
  • Eventuella kända buggar eller begränsningar.

Exempel på README-struktur

# Projektets namn

Kort beskrivning av vad programmet gör.

## Funktioner
- Lägg till data
- Visa data
- Sök efter data

## Så kör du programmet
1. Öppna projektmappen.
2. Kör main.py.
3. Följ menyn i terminalen.

## Kända begränsningar
- Programmet hanterar ännu inte alla typer av felaktig inmatning.

3. Reflektera

Svara på dessa frågor i din reflektion, muntligt eller skriftligt:

  • Vad fungerade bäst i projektet?
  • Vad var mest utmanande?
  • Hur löste du problem du stötte på?
  • Vilka delar av programmering förstår du bättre nu?
  • Vad vill du lära dig mer om?

Sammanfattning

  • Du har testat programmet med olika scenarier.
  • Du har dokumenterat din kod och skapat en README-fil.
  • Du har reflekterat över hur du arbetat och vad du lärt dig.
  • Du har utvecklat både tekniska och analytiska färdigheter.

Tillbaka till Kapitel 5