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.