Middle+
Co je to scénář?
sobes.tech AI
Odpověď od AI
SCREENPLAY je architektonický vzor pro automatizované testování, založený na principech objektově orientovaného programování a vzoru chování Actor. Zaměřuje se na to, co dělají herci (postavy) v systému, nikoli na to, jak to dělají.
Hlavní koncepty:
- Herci: Představují uživatele nebo systémy, které interagují s aplikací. Mají schopnosti (Abilities) a mohou vykonávat akce (Actions).
- Schopnosti: Určují, jak může herec komunikovat se systémem (například "BrowseTheWeb" pro interakci s prohlížečem).
- Akce: Popisují úkoly, které herec vykonává (například "Login", "AddProductToCart"). Akce mohou být na vysoké nebo nízké úrovni (interakce s UI).
- Otázky: Umožňují herci požadovat informace o stavu systému.
Výhody SCREENPLAY:
- Jasné oddělení rolí: Rozlišuje, kdo (Actor) dělá co (Action) a jak (Ability, Interaction).
- Vysoká čitelnost: Testy jsou psány v jazyce blízkém přirozenému jazyku, což usnadňuje pochopení.
- Opakované použití: Elementy (Abilities, Actions, Questions) jsou snadno znovu použitelné v různých testech.
- Škálovatelnost: Vhodné pro velké a složité projekty.
- Údržba: Změny v UI nebo logice aplikace často vyžadují pouze úpravy příslušných nízkoúrovňových prvků.
Příklad struktury (v kontextu Serenity BDD, populární implementace SCREENPLAY):
- Úkoly: Vysoceúrovňové akce (například "Log in").
- Interakce: Nízké úrovně akce, které přímo komunikují s UI (například "TypeInto", "Click").
- Otázky: Dotazy na informace.
- Stránky / UI prvky: Definice lokalizátorů pro UI prvky.
- Schopnosti: Schopnosti herců.
SCREENPLAY zlepšuje strukturu a údržbu automatizovaných testů, činí je více objektově orientovanými a snadněji čitelnými.