Gyártsunk nagyszerű történeteket a jobb tesztelési forgatókönyvekért

Állíthatjuk azt egy funkcióról, hogy leteszteltük ha azt egyszer, egyféleképpen ellenőriztük. De ugyanezt mondhatjuk akkor is róla, ha nem csak végfelhasználóként, hanem takarítónői-, vagy rendszergazdai szerepkörben, csúcsvezetőként, menedzserként, vagy netán hackerként közelítettünk az adott funkcióhoz. Abban biztos vagyok, hogy a különböző forgatókönyvekkel való tesztelés részletesebb képet ad a funkció minőségéről. A kérdés az tesztelőként milyen felhasználói történetbe éljük bele magunkat.

Mostanában írtam a játékok használatáról a szoftvertesztelésben (http://www.kohl.ca/2013/exploratory-test-adventures-storytelling-games-in-software-testing/) és ebben hívtam fel a figyelmet Martin Janson és Greger Nolmark egy tanulmányára. Most néhány tippel szeretnék segíteni, hogyan kell játékos történeteket létrehozni a tesztelési projektekben.

Először is vessünk egy pillantást Cem Kaner munkájára a forgatókönyv alapú tesztelésről: Bevezetés a forgatókönyv alapú tesztelésbe (http://www.testingeducation.org/BBST/testdesign/Kaner_ScenarioIntroVer5.pdf). Szeretném felhívni a figyelmet a CHAT modellre (cultural, historical activity theory), amiről a könyvben beszél. Ha még több több információt szeretnél a CHAT-hoz, olvasd el ezt a tanulmányt: http://www.kaner.com/pdfs/FiedlerKanerCast2009.pdf. Fordíts figyelmet az események és feszültségek hálózatának leírásának megértésére. Ezek kellenek ahhoz, hogy variációkat és különböző energiákat tudjunk beilleszteni a történetmesélésbe. Mindkettő rész alapvető és értékes, érdemes mélyebben is beleásni magunkat.

Ajánlom olvasásra továbbá Hans Buwalda cikkét a szappanopera tesztelésről (http://www.logigear.com/logi_media_dir/Documents/Soap_Opera_Testing.pdf). Ez egy nagyon jó példa a forgatókönyv alapú tesztelésre. Buwalda a televíziós szappanoperákat vette alapul a történetekhez a struktúrához és a variációkhoz. Ne felejtsük el, hogy a tesztelésben rengeteg variációt kell figyelembe venni, ugyanúgy, mint a való életben. Ennek előmozdítása érdekében nézzünk bele egy tesztelési folyamatba. Cem Kanernek van egy blog bejegyzése néhány linkkel, amelyek segítenek a háttér információk megszerzésében: Research for Best Practices (http://kaner.com/?p=96).

A szappanopera tesztelés, tesztelési folyamat és tesztforgatókönyv egy jó kiinduló pont egy jó tesztelési történet megalkotásához.

Ezt követően keressünk karaktereket. Jenny Cham írt egy igazán jót rengeteg hasznos linkkel a karakterek megformálásáról: Creating design personas (http://jennycham.co.uk/?page_id=410). Ne felejtsünk el a linkekre kattintani, mert rengeteg jó ajánlást találunk ott. Egy évvel ezelőtt én is készítettem egy helyzetfelmérést a felhasználói élmény karakterek használatáról a tesztelésben. (meg kell keresnem, mert a link már nem működik a blogon) Elisabeth Hendrickson ismertette meg velem ezt a gondolkodásmódot, de felhívta a figyelmemet, hogy használjak különleges karaktereket, mint például a rajzfilmfigurák. Én inkább a szabványos felhasználói karakterekre voksolok, mint Alan Cooper, de a rajzfilmfigurák vagy más karakterek is jók kezdetnek.

Ezek a szereplők megfelelő, hogy elkezdd a karakterek megformálását a történetedhez. Mi a motivációjuk, amikor használják a szoftvereinket? Milyen félelmeik vannak? Mitől aggódnak, mi kergeti őket az őrületbe?

Ezt követően nézzük meg, hogyan kell egy nagyszerű történetet mesélni egy hires író tolmácsolásában: Kurt Vonnegut at the Blackboard (http://www.laphamsquarterly.org/voices-in-time/kurt-vonnegut-at-the-blackboard.php?page=all). (Megkértem Andrzej Marczewskit hogy segítsen egy jó példával megvilágítani a történetmesélést a játékokban és ez volt az első link, amit küldött nekem. Köszi Andrzej!)

Figyeljünk a különböző lehetőségekre a történet szerkezetében. A tesztelésben számtalan különböző opciót használunk ugyanabban a forgatókönyvben, amennyiben hiszünk a cselekvésmintákban, karakterekben és variációkban egy valós termék használatakor. Egy történet különböző verziói számos fontos információt és megállapítást eredményeznek. Vonnegut egy egyszerű keretrendszert használ a történetek készítésére, amelyet könnyen elsajátíthatunk és használhatunk.

Végezetül nézzük meg a történetmesélést a játékokban. Andrzej így beszél erről: Nem csak játszani akarok, meg akarom élni a játékokat.

Egy jól felépített játékban maga a történet fontos. Megvan az oka az egyes cselekményeknek: egy jó döntés ezen a helyen befolyással lesz a játék többi területére, ugyanúgy, mint a valós életben. Ezért fontos dimenziókat hozzáadni a játék a történetéhez. A variációk és a dimenziók különböző hatásokat eredményeznek a rendszerben és jutalmazzák a feladatok elvégzését. Olvastam egy részt a Gamasutrából: A fejlesztő feljegyzése: 3 probléma megoldva az interaktív történetmesélőkkel kapcsolatban (Ernest Adams). A karakter amnézia kérdése, a belső konzisztencia és a történet folyamata felbecsülhetetlen a tesztelők számára. Úgy lépünk be az alkalmazásokba, hogy nem igazán van fogalmunk arról mi is folyik ott, legfőképpen igaz ez amikor először indítjuk el azt. Akárhogyan is a felhasználóink is teljesen az elejéről kezdik, amikor az alkalmazást használatba veszik. Ezek a problémák olyan területekre mutatnak rá, amelyekre történeteket kell kitalálnunk, hogy tesztelni tudjuk.

Mint tesztelők, a munkánk során több eset, történet is körülvesz bennünket. Sokkal részletesebb és mélyebb értelmet adhatunk a tesztelésnek a történetekkel és az elképzelt világokkal.

A történetmesélés a játékokban elképesztően hasonlít ahhoz, ami nekünk a teszteléshez kell. Rengeteget tanulhatunk a virtuális világok és történetek létrehozásából. Segítenek a perspektívánk kiszélesítéséhez, és a variációk kitalálásához, fontos felderítésekhez a szoftverben vagy rendszerben, amit tesztelünk. Érdekesebbé tehetjük a feladatainkat, ha csinálunk valami újat, valami izgalmasat.

Néhány összegző pont a végére:
  • Kombináljuk az egyes elemeket az összes témakörből, tanuljunk minél többet a kalandos és izgalmas történetek létrehozásáról.
  • Strukturáljunk és igazi, életből vett feltételeket hozzunk létre: különböző emberek, motivációk, különböző környezeti tényezők és változások.
  • Adjunk történetfolyamot, meglepetéseket, motivációkat és figyeljünk a nem szándékos következményekre a rendszerben és az emberekben.
  • Ne álljunk le egyetlen esetnél, készítsünk különböző variációkat ugyanarra az esetre és változtassuk meg a beállításokat, vagy az egész környezetet, hogy segítsen a perspektívánk megváltoztatásában.
  • Használjunk különböző karaktereket – segítenek? vagy megakasztanak?
  • Készítsünk bevezetést, tárgyalást, befejezést.
  • Legyenek különböző befejezések – hagyjuk a dolgokat megoldatlanul, vagy fejezzük be egy rossz üzenettel, ne mindig happy end legyen a vége!

Sokféle alapvető koncepciót hasonlítottam össze, amelyek hatással lehetnek a történetmesélős tesztelésre, a többi már rajtunk áll. Az, hogy hogyan kombináljuk ezeket egy hasznos és izgalmas dolog létrehozásában, az rajtunk és a csapaton múlik. Van lehetőségünk gazdag perspektívák létrehozására, beindítani a tesztelési erőfeszítéseinket.

Nos, mindenkinek jó történeteket kívánok!

Szerző:
Jonathan Kohl

<< Vissza