Testning

Tidigt i projektkursen

Förväntad aktivitet

Till varje krav knyt minst ett test. Beskriv kortfattat hur testningen av kravet gått till och vilket resultat det fick. Stora och mer komplicerade krav kan kräva flera tester. Om du skapar användningsfall, låt då olika scenarion få var sitt manuellt testfall. Låt testfallen ha en bestämd indata (Ex. [Mata in "Kalle"] istället för [Mata in ett namn]). Om möjligt skriv testfallet innan koden som implementerar kravet.

Rapportera testningens utfall när du beskriver vilka krav som implementerats.

Senare i projektkursen

Inför muntlig examination

Titta på föreläsningarna:

Instuderingsfrågor för kapitel 8

  • Vilka två huvudsyften har testning? (s227)
  • Varför kan inte testning hitta ALLA fel? (s227)
  • Beskriv med egna ord Validering och Verifiering (alltså inte bara översätt definitionen). (s228)
  • Vad bestämmer hur mycket resurser vi kan lägga på testning? (s228-229)
  • Vad skiljer testning från inspektioner? (s229-230)
  • Vilka tekniker/utvecklingsmetoder kan användas i Development testing ? (s231-245)
  • Varför är beroenden till exempelvis en databas dåligt för automatiska enhetstester och hur kan vi lösa det problemet? s234
  • Vilka ekvivalenta partioner (in och ut) kan du identifiera för en funktion som tar antal år som indata och returnerar true om personen är myndig? (Tips: tre olika in och tre olika ut) (s234-237)
  • Ge ett exempel på "emergent behaviour". (s240)
  • Förklara varför systemtestning ofta är svårare att utföra än enhetstestning. s240
  • Utveckla en funktion som returnerar medianen från en array med nummer utan inbyggd funktion för median ;) med hjälp utav TDD. Du kan skriva testerna som en serie if-satser om du inte har ett testramverk installerat. Använd processen på s243.
  • Vilka är fördelarna med TDD?
  • Vad är målet med release-testing?
  • Gå igenom dina krav och fundera kring Requirements-testing. (s245-246)
  • Gör en plan för att låta en annan student acceptanstesta din applikation eller någon del av din applikation. (s249-251)

För att utveckla testningen i ditt projekt