Sobes.tech
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.