Middle+
Wat is een SCREENPLAY?
sobes.tech AI
Antwoord van AI
SCREENPLAY is een architecturaal sjabloon voor geautomatiseerde tests, gebaseerd op de principes van objectgeoriënteerd programmeren en het gedragspatroon Actor. Het richt zich op wat de actoren (personages) in het systeem doen, niet op hoe ze het doen.
Belangrijkste concepten:
- Actoren: Vertegenwoordigen gebruikers of systemen die met de applicatie interageren. Ze bezitten Vaardigheden (Abilities) en kunnen Acties (Actions) uitvoeren.
- Vaardigheden: Bepalen hoe de actor met het systeem kan omgaan (bijvoorbeeld "BrowseTheWeb" voor interactie met de browser).
- Acties: Beschrijven de taken die de actor uitvoert (bijvoorbeeld "Login", "AddProductToCart"). Acties kunnen van hoog niveau (taken) of laag niveau (UI-interacties) zijn.
- Vragen: Stellen de actor in staat om informatie over de systeemstatus op te vragen.
Voordelen van SCREENPLAY:
- Duidelijke scheiding van rollen: Onderscheidt wie (Actor) wat (Action) doet en hoe (Ability, Interaction).
- Hoge leesbaarheid: Tests worden geschreven in een taal die dicht bij natuurlijk taal ligt, wat het begrip vergemakkelijkt.
- Herbruikbaarheid: Elementen (Abilities, Actions, Questions) zijn gemakkelijk herbruikbaar in verschillende tests.
- Schaalbaarheid: Geschikt voor grote en complexe projecten.
- Onderhoudbaarheid: Wijzigingen in UI of logica van de applicatie vereisen vaak alleen aanpassingen in de relevante laag-niveau elementen.
Voorbeeldstructuur (in de context van Serenity BDD, een populaire implementatie van SCREENPLAY):
- Taken: Hoog-niveau acties (bijvoorbeeld "Log in").
- Interactie: Laag-niveau acties die direct met de UI omgaan (bijvoorbeeld "TypeInto", "Click").
- Vragen: Informatieaanvragen.
- Pagina's / UI-elementen: Definities van locators voor UI-elementen.
- Vaardigheden: Vaardigheden van de actoren.
SCREENPLAY verbetert de structuur en onderhoudbaarheid van geautomatiseerde tests, waardoor ze objectgeoriënteerder en gemakkelijker te lezen worden.