En AI-baserad digital lärarassistent

Lektion. Gy. Tillämpad programmering – Felhantering och testning

Lektionsplanering

Årskurs: Gymnasiet
Ämne: Tillämpad programmering
Tema: Felhantering och testning

Koppling till styrdokument

Centralt innehåll

Denna lektion fokuserar på felhantering inom programmering och vikten av testning för att säkerställa programmens kvalitet och funktionalitet. Eleverna får lära sig om vanliga fel, felsökningstekniker och metoder för att utföra enhetstester.

Kunskapskrav

Eleven ska kunna identifiera och lösa fel i programmering samt bedriva tester av programkod för att säkerställa funktionalitet och kvalitet.

Lärarledda instruktioner

Introduktion till felhantering (10 min)

  • Förklara vad felhantering är och varför det är viktigt inom programmering.
  • Diskutera vanliga typer av fel: syntaxfel, runtime-fel och logiska fel.
  • Ge exempel på hur fel kan påverka programkörning och användarupplevelse.

Felsökningstekniker (15 min)

  • Presentera olika strategier för felsökning, som att använda debug-verktyg och loggar.
  • Gå igenom betydelsen av att förstå felmeddelanden och hur man tolkar dem.
  • Diskutera metoder för att isolera och åtgärda problem i koden.

Testning av programkod (15 min)

  • Introducera konceptet enhetstestning och dess fördelar.
  • Visa hur man skriver och kör enhetstester i ett valt programmeringsspråk.
  • Diskutera högsta och lägsta mängd tester samt gränsfall.

Praktisk tillämpning (10 min)

  • Gå igenom ett exempel på en kod som innehåller både fel och tillhörande tester.
  • Diskutera hur man kan implementera testning i koden för kontinuerlig integration.
  • Besvara elevernas frågor och förbereda dem för praktiska övningar.

Aktivitet

Eleverna kommer att få en kodsnutt med medvetet introducerade buggar. I par ska de identifiera felen, använda felsökningstekniker för att åtgärda problemen och sedan skriva enhetstester för de funktioner de har rättat till. Genom denna aktivitet övar de både på felhantering och testning av kod i praktiken.

Exit-ticket

  • Vad är ett logiskt fel? (Ett fel som uppstår när programmet körs korrekt men ger felaktigt resultat.)
  • Nämn två typer av fel som kan uppstå i program. (Syntaxfel och runtime-fel.)
  • Vad är enhetstestning? (Testning av enskilda komponenter eller funktioner i programmet för att säkerställa att de fungerar som avsett.)
  • Hur kan du använda loggar för felsökning? (Genom att skriva ut meddelanden för att spåra flödet av programmet och identifiera var det går fel.)
  • Vad innebär gränsvärdestester? (Att testa vid gränserna för giltiga indata för att säkerställa att koden hanterar extrema värden korrekt.)

Hemuppgift

Som hemuppgift ska eleverna ta en egen kodsnutt som de skrivit tidigare och analysera den för eventuella fel. De uppmanas att skriva ner de fel de kan hitta och föreslå lösningar. Dessutom ska de skapa enhetstester för att verifiera att deras kod fungerar korrekt. Syftet är att stärka förmågan att felsöka och testa program.

Citat

”Att skriva kod är bara en del av att programmera; den riktiga konsten ligger i att lösa problem.” – Steve McConnell (1993)

Detta citat betonar att programmets fulla värde kommer från att kunna identifiera och lösa problem, vilket är kärnan i både felhantering och testning.


×