Middle+
Čo je to scenár?
sobes.tech AI
Odpoveď od AI
SCREENPLAY je architektonický vzor pre automatizované testovanie, založený na princípoch objektovo orientovaného programovania a vzorec správania Actor. Zameriava sa na to, čo robia herci (postavy) v systéme, a nie na to, ako to robia.
Hlavné koncepty:
- Herci: Predstavujú používateľov alebo systémy, ktoré interagujú s aplikáciou. Majú schopnosti (Abilities) a môžu vykonávať akcie (Actions).
- Schopnosti: Určujú, ako môže herec komunikovať so systémom (napríklad "BrowseTheWeb" pre interakciu s prehliadačom).
- Akcie: Popisujú úlohy, ktoré herec vykonáva (napríklad "Login", "AddProductToCart"). Akcie môžu byť na vysokej alebo nízkej úrovni (interakcie s UI).
- Otázky: Umožňujú hercovi požadovať informácie o stave systému.
Výhody SCREENPLAY:
- Jasné rozdelenie rolí: Rozlišuje, kto (Actor) čo (Action) robí a ako (Ability, Interaction).
- Vysoká čitateľnosť: Testy sú písané jazykom blízkym prirodzenému jazyku, čo uľahčuje pochopenie.
- Opakovateľnosť: Elementy (Abilities, Actions, Questions) sú ľahko opakovane použiteľné v rôznych testoch.
- Škálovateľnosť: Vhodné pre veľké a zložité projekty.
- Údržba: Zmeny v UI alebo logike aplikácie často vyžadujú len úpravy v príslušných nízkoúrovňových prvkoch.
Príklad štruktúry (v kontexte Serenity BDD, populárnej implementácie SCREENPLAY):
- Úlohy: Vysokoúrovňové akcie (napríklad "Log in").
- Interakcie: Nízkoúrovňové akcie, ktoré priamo interagujú s UI (napríklad "TypeInto", "Click").
- Otázky: Dopyty po informáciách.
- Stránky / UI prvky: Definície lokalizátorov pre UI prvky.
- Schopnosti: Schopnosti hercov.
SCREENPLAY zlepšuje štruktúru a údržbu automatizovaných testov, čím ich robí viac objektovo orientovanými a ľahšie čitateľnými.