Sobes.tech
Junior

Wat is testen op basis van gebruiksscenario's?

sobes.tech AI

Antwoord van AI

Gebruiksscenario-testen (use case testing) is een testontwerptechniek die gebaseerd is op het ontwikkelen van testgevallen (test-case) uit beschrijvingen van gebruikersinteracties met het systeem. Het richt zich op het verifiëren van de functionaliteit van het systeem vanuit het perspectief van de eindgebruiker, door typische actiesequenties te simuleren die de gebruiker uitvoert om een specifiek doel te bereiken.

Belangrijkste kenmerken:

  • Basis: Use cases of gebruikersverhalen (user stories).
  • Doel: Controleren of het systeem voldoet aan de functionele eisen die in de use cases zijn beschreven.
  • Focus: Op de interactie tussen gebruiker en systeem en de datastromen.
  • Resultaat: Een set testgevallen die zowel de hoofd- ("happy path") als de alternatieve en uitzonderlijke paden dekt.

Fasen:

  1. Identificatie van use cases.
  2. Ontwikkeling van scenario-beschrijvingen (voorwaarden, stappen, na-voorwaarden).
  3. Definitie van hoofd-, alternatieve en uitzonderlijke paden.
  4. Ontwikkeling van testgevallen voor elk pad.
  5. Uitvoering van de testgevallen en analyse van de resultaten.

Voorbeeld (fragment van het scenario "Inloggen van gebruiker"):

Stap Actie Systeem
1 De gebruiker opent de inlogpagina. Het invoerformulier voor login en wachtwoord wordt weergegeven.
2 De gebruiker voert een correcte login in.
3 De gebruiker voert een correct wachtwoord in.
4 De gebruiker klikt op de "Inloggen" knop. Het systeem verifieert de inloggegevens.
5 De gebruiker wordt doorgestuurd naar de hoofdpagina.

Soorten paden:

  • Hoofdpad (Main Flow): Ideale sequentie van acties bij succesvolle uitvoering van het scenario.
  • Alternatief pad (Alternative Flow): Variatie op de hoofdroute die tot succes leidt, maar via andere stappen (bijvoorbeeld inloggen via sociale netwerken).
  • Uitzonderlijk pad (Exceptional Flow): Situatie waarin het scenario eindigt met een fout of onvolledig resultaat (bijvoorbeeld fout wachtwoord).

Voordelen:

  • Focus op de behoeften van de gebruiker.
  • Uitgebreide dekking van functionaliteit.
  • Helpt fouten in de interactie tussen componenten te identificeren.
  • Testgevallen zijn gemakkelijk te begrijpen en te gebruiken door alle projectdeelnemers.