H15: Testen en testrapport

Python intro
Programming basics-II
Les 3 / Week 7a
Testen en testrapport
PRO
1 / 39
next
Slide 1: Slide
Applicatie- en mediaontwikkelaarMBOStudiejaar 1

This lesson contains 39 slides, with interactive quizzes, text slides and 1 video.

Items in this lesson

Python intro
Programming basics-II
Les 3 / Week 7a
Testen en testrapport
PRO

Slide 1 - Slide

Inhoud

Testen:
  • Technische test
  • Acceptatietest


Over het testrapport:
  • Doelgroep
  • Doel
  • Inhoud
  • Conclusies trekken

Slide 2 - Slide

Slide 3 - Video

DTAP/OTAP
Development/Ontwikkel
Test
Acceptatie
Productie

Slide 4 - Slide

Slide 5 - Slide

O
Doorgaans gewoon jouw computer.
Soms kan het ook een servertje zijn ergens op kantoor.
Ontwikkelversie waar gewoon in gerommeld kan worden!
T
Test-omgeving waar alleen features in komen die ook echt getest moeten worden. Zitten geen echte gebruikers op, maar hier gebeuren je use case tests en technische tests.
A
Acceptatie-omgeving.
Deze omgeving moet heel erg lijken op je productie-omgeving. Hier gebeuren je acceptatietesten!
P
Productie-omgeving
Live! De echte echte.

Hier zitten je gebruikers en is je applicatie echt in de lucht.
Hier komen alleen features in die langs alle testen zijn gekomen.

Slide 6 - Slide

Technisch: unit tests
  • Een technische test kijkt naar ‘units’ van code, dat zijn kleine stukjes code die bij elkaar horen. 
  • Bijvoorbeeld een functie / methodeof gewoon een aantal regels die samen één ding doen. 
  • Een unit heeft altijd input en verwachte output

Slide 7 - Slide

Use case template
  • Hierop vul je gegevens in over de unit die je gaat testen. Een technische test voor het hele sprint bestaat dus uit een (flink) aantal ingevulde templates
  • Kun je al maken bij het ontwerpen. Je maakt dan de test waaraan je code moet voldoen voor je begint met programmeren

Slide 8 - Slide

Dataset

  • Happy path: input die juist is, zoals de code verwacht.
  • Edge case: input die net niet juist is (bijvoorbeeld: negatief getal bij leeftijd).
  • Extreme cases: input die nergens op slaat(bijvoorbeeld: tekst invoeren bij leeftijd).

Slide 9 - Slide

Formats

Slide 10 - Slide

Technische test

Slide 11 - Slide

Slide 12 - Slide

Voorbeeldscenario's
  • Bij het registreren van een account worden alle velden gevalideerd
  • Bij het inloggen worden alle velden gevalideerd en wordt de password hash gecontroleerd 
  • Bij het aanmaken van een woning worden de velden gevalideerd. Gebruikers kunnen geen HTML-code invoeren.

Slide 13 - Slide

Acceptatietest
Voorbeelden uit de klas

Slide 14 - Slide

Hoe gaat het in zijn werk?
•Iedere eis wordt een test-scenario (= instructies + vragen).
•Test de applicatie in de productieomgeving (dus niet op jouw eigen computer, maar bijvoorbeeld online of op de pc van de opdrachtgever).
•Laat de opdrachtgever de test uitvoeren (dat doe je dus niet zelf, want je wil testen of de opdrachtgever de applicatie zelfstandig kan gebruiken).
•Je ondersteunt de tester natuurlijk wel; geef waar nodig aanwijzingen en beantwoord vragen.


Slide 15 - Slide

Hoe gaat het in z'n werk? (vervolg)
  • Alle positieve antwoorden staan onder elkaar.
  • Laat ruimte voor opmerkingen in je test (de voorbeelden zijn te klein om dit te laten zien).
  • Noteer intussen wat je opvalt, en de opmerkingen die de tester maakt.
  • Laat de opdrachtgever tekenen voor akkoord.
  • Gebruik een logische volgorde, bijvoorbeeld: inloggen > taak aanmaken > taak aanpassen

Slide 16 - Slide

Slide 17 - Slide

👍

Slide 18 - Slide

👍
👍
👍

Slide 19 - Slide

👍
👍

Slide 20 - Slide

Slide 21 - Slide

Testrapport

Slide 22 - Slide

Herhaling
   
 🐞 Testen zorgt ervoor dat de software aan de vereisten voldoet en zo min mogelijk problemen en bugs bevat.

    💹 Goed testen verhoogt de kwaliteit van software en helpt potentiële risico's te vermijden.

Slide 23 - Slide

Over het testrapport

Slide 24 - Slide

👨‍⚖️
Een testrapport bevat informatie over welke tests zijn uitgevoerd en hoe deze zijn uitgevoerd. Het is bedoeld om belanghebbenden te laten zien hoe goed de geteste software werkt en om hen gerust te stellen dat de software goed is gecontroleerd op fouten.

Slide 25 - Slide

👩‍💻
Als ontwikkelaar gebruiken we het testrapport om te laten zien dat we de software goed hebben getest en om te zien welke delen van de software nog verbeterd kunnen worden. Het testrapport kan ook helpen om het testproces en de kwaliteit van de software te verbeteren.

Slide 26 - Slide

Het testrapport is voor belanghebbenden
Bijvoorbeeld voor:
  • Projectmanagers
  • Andere ontwikkelaars
  • Testers
  • Klanten, Product Owners

Slide 27 - Slide

Onderdelen testrapport
  • Inleiding
  • Software en testomgeving
  • Teststrategie
  • Testresultaten
  • Conclusie

Slide 28 - Slide

Onderdelen testrapport
Inleiding: globaal wat en hoe er is getest.

  • Afgestemd op de doelgroep.
  • Wanneer het rapport bijvoorbeeld naar de klant gaat leg je termen uit die ze mogelijk niet kennen, zoals: technische-, functionele- en acceptatietest; Testscenario; etc...

Slide 29 - Slide

Onderdelen testrapport
Software en testomgeving: welke precieze versie van de software is getest en op wat voor soort omgeving.

  • Bijvoorbeeld: Software versie v0.9.2 (git revisie 522e2ca801)
  • Op welk systeem? Met welke hardware? Standaardiseren testomgeving voor consistente en betrouwbare testresultaten
  • Gestandaardiseerde testomgeving helpt bij het vergelijken van testresultaten tussen verschillende testruns en verschillende versies van de software.

Slide 30 - Slide

Onderdelen testrapport
Teststrategie: Welke methode is er gebruikt om te testen

  •  Op welke type apparaten is er getest (bijvoorbeeld: Android 10 en hoger met schermresolutie 720x1080 en hoger)
  •  Soort testers (bijvoorbeeld: Technisch, Niet-technisch, Passend bij de doelgroep)
  •  Verwijzingen naar de (niet ingevulde) functionele en technische test documenten

Slide 31 - Slide

Onderdelen testrapport
Testresultaten:

  • Tabellen met voor ieder testscenario bepaald of die geslaagd is
  • Opmerkingen van de testers en andere interessante bevindingen
  • Optioneel: grafieken met de hoeveelheden geslaagde testscenario's.

Slide 32 - Slide

Onderdelen testrapport
Conclusie:

  • Onderbouwing dat test betrouwbaar is
  • Onderbouwing of aan de gestelde eisen van de opdracht is voldaan
  • Verbetervoorstellen voor toekomstig werk aan de software. (K1-W5)

Slide 33 - Slide

Voorbeeld: Conclusie Testrapport
"Na uitvoerig testen van de software kunnen we concluderen dat de resultaten positief zijn. De software heeft in alle geteste scenario's goed gefunctioneerd en heeft de vereiste functionaliteiten probleemloos uitgevoerd. De software is in staat om aan de eisen van de gebruikers te voldoen en kan zonder zorgen worden geïmplementeerd.

De tests waren zeer dekkend en grondig, dat blijkt uit [...] Er zijn verschillende soorten tests uitgevoerd, waaronder functionele tests, integratietests, prestatietests en beveiligingstests. Hierdoor [...]"

"Alles ging goed, er waren geen bijzonderheden"

❌ Onjuist
✅ Juist

Slide 34 - Slide

Wat wordt er beschreven in het hoofdstuk 'testresultaten' van een testrapport?
A
Welke methode is gebruikt om te testen
B
Een overzicht van behaalde testscenario's met opmerkingen
C
Verbeteringen voor toekomstig werk aan de software
D
Welke versie van de software is getest

Slide 35 - Quiz

Waarom is het belangrijk om de testomgeving te documenteren?
(2 goede antwoorden)
A
Om de prestaties van de software te verbeteren
B
Het kan helpen bij het standaardiseren van de testomgeving voor betrouwbare testresultaten
C
Het kan helpen bij het vergelijken van testresultaten tussen verschillende testruns en softwareversies
D
Staat leuk op het testrapport

Slide 36 - Quiz

Wat is het doel van de conclusie in een testrapport?
A
Het beschrijven van de gebruikte teststrategie
B
Het geven van verbetervoorstellen voor toekomstig werk aan de software
C
Het geven van een algemene indruk van de geteste software
D
Onderbouwen of en waarom de test geslaagd is

Slide 37 - Quiz

Samenvattend
  • Inleiding: globaal wat en hoe er is getest, met eventueel uitleg voor de lezer
  • Software en testomgeving: welke versie van de software is getest op welke precieze systeem
  • Teststrategie: welke methode is gebruikt om te testen, met verwijzingen naar de tests
  • Testresultaten: overzichten (tabellen en grafieken) van behaalde testscenario's, met opmerkingen
  • Conclusie: beschrijving of aan de gestelde eisen is voldaan, met verbetervoorstellen voor toekomstig werk aan de software.

Slide 38 - Slide

Opdracht
Stem af met je projectgroep (zodat je niet allemaal hetzelfde doet) en verdeel zodat je onderstaande kunt uitvoeren: 
  • Maak per persoon minimaal 6 unit tests (2 happy, 2 edge, 2 extreme) voor project Barroc Intens. Je hoeft ze nog niet in te vullen. 
  • Maak een acceptatietest voor 5 functionaliteiten in je applicatie.

Slide 39 - Slide