Cikksorozat: Windows automatizálás AutoHotKey segítségével  1. rész

Bevezetés

A GUI tesztautomatizálás alatt a legtöbben a webalkalmazások és mobilalkalmazások tesztelését értik. Mi van akkor, ha egy Windows-os alkalmazást is kell tesztelni? Fejvakarás. Szétnézés a fizetős eszközök között. Pl.: Katalon Studio, Ranorex Studio vagy UFT (QTP)… Ezek nem rossz termékek és valóban képesek Windows-os alkalmazások felületi, funkcionális, automatizált tesztelésére. De drágák.

A cikksorozatban szeretnék bemutatni egy open source, ingyenes alternatívát az AutoHotKey-t (AHK). Pár cikk erejéig önálló eszközként vizsgáljuk meg a tudását, de a végén megmutatom majd azt is, hogy Robot Framework-kel hogyan tud együttműködni.

Beszerzés

Az AutoHotKey-t egyszerűen levadászhatjuk a saját webhelyén (LINK: https://www.autohotkey.com)  egy bátor Download gombra klikkeléssel. A cikk írásakor a 2.0-ás verzió a legfrissebb, ez sok mindenben szakít az 1.x verziókkal.

A telepítés Next-Next-es. A végén elindul a Dash alkalmazás, ami nélkül el lehet boldogulni, de ha már voltak olyan kedvesek és lefejlesztették nekünk, akkor érdemes lesz használni.

Az első megértés

Az AutoHotKey-nek van egy egyszerű programnyelve, aminek a segítségével (ahk kiterjesztésű) script állományokat hozhatunk létre. Ezeket az AutoHotKey segítségével futtathatjuk.

Az AutoHotKey programnyelve segítségével könnyen készíthetünk billentyűmakrókat vagy akár komplexebb Windows-os alkalmazásokat is.

Amikor felteszed a gépre az AHK-t és elindítod, látszólag nem történik semmi. Ez a helyes működés. 🙂 A háttérben elindul az AHK és vár. Várja milyen scriptet akarunk futtatni.

Kezdjük valami egyszerűvel.

Az első sikerélmények

Nem, nem csinálunk ’Hello Word’-öt! 🙂 Tesztelősebb példákat szeretnék mutatni. A következő kódokat egy üres, tesz01.ahk állományba írjuk. Lehet sima notepaddal is írni ezeket, de ha kényelmesek akartok lenni, akkor érdemes valamilyen programozó IDE-t használni. A Visual Studio Code a legtöbb ilyen tesztelős, automatizálásos játszadozáshoz megfelelő. Ha VSC-t használsz, akkor van egy AHK-s kiegészítő is, amit feltehetsz: AutoHotkey v2 Language Support.

Megjegyzés:

1. rövidítések: Teszteset írás gyorsítása

Teszteset írásakor gyakran kell nagyon hasonló mondatokat írnunk: „Nyomd le a … gombot!”, „Írd be a … mezőbe, hogy …!”, „Klikkelj a … linkre”. Ezek másolgatása enyhíti a fáradalmainkat, de azért ez is sok művelet: kijelölés, Ctrl+C, jó helyre állás, Ctrl+V.

Az AHK ahol tud segít.

a. egyszerűen

A teszt01.ahk állományba írd be:

Mentsd el és most tudod futtatni. Vagy

1. A fájlkezelőben ráklikkelsz duplán a teszt01.ahk állományra, vagy

2. parancssorból az AutoHotKey.exe teszt01.ahk -val

Látszólag nem történt semmi. Látszólag.

Most írd be bárhova, ahova lehet írni (pl.: notepad, vagy word, vagy a böngész URL sora 🙂 )

nlg

és nyomj egy szóközt vagy egy Enter-t (vagy Tab-ot). Tádám.

Magyarázom:

::bármi::akármi

A bármit-t akármire cseréli menet közben. Remek lehetőség rövidítésekre.

Miért {!} van a végén? Mert a ! önmagában az Alt billentyű leütését jelenti.

b. jobban

Módosítsunk kicsit. Milyen jó lenne, ha a végén nem nekünk kéne visszamenni és kitörölni a … -ot. Persze ha nem tesszük bele a …-ot, akkor eleve nem lesz ott, de a visszamenést is jó lenne megoldani. Mi sem egyszerűbb:

A {}-jelben lévő Left-et végre fogja hajtani.

Mentés után újra kell futtatni a teszt01.ahk-t. Figyelmeztetni fog, hogy ennek már egy példánya fut, ezzel az új futtatással a régi példányt eltávolítja a háttérből és ezt az újat fogja futtatni. Bátran klikkeljetek az Igenre.

Ha most próbáljátok, akkor kiírja a mondatot és a kurzor beáll a „Gombot!” elé.

Még egy szépítés a 8 {Left} helyett írhatjuk ezt is:

2. Gyorsbillentyű készítés

Gyakran kell ugyanazokat a programokat elindítani, vagy ugyanazt a weboldalt megnyitni. Persze kitehetsz az asztalra link-ikonokat, de ebben az esetben, mindig az asztalt kell előbb láthatóvá tenni, majd rá-dupla-klikkelni az ikonra. Egyszerűbb lenne egy gyorsbillentyű kombináció.

Így megy ez (az előző sor után):

!p::Run  "https://passed.hu/"

(Ne felejtsd el mentés után újra betölteni!)

Ha most Alt+p-t nyomsz, akkor az alapértelmezett böngészőben egy új lapon megnyitja a passed.hu oldalt.

Magyarázatok:

  • A ! jel az Alt billentyűt jelenti.
  • A Run paranccsal programokat lehet indítani, dokumentumokat és weboldalakat megnyitni. Pl.:
    • számológép elindítása: Run „calc”
    • valami.exe futtatása: Run „c:\valahol\valami.exe”
    • valami.pdf megnyítása: Run „c:\valahol\valami.pdf”

3. Több akciót!

Nézzük meg, hogy hogyan megy több akció végrehajtása egy gyorsbillentyűhöz rendelve. Elkészítjük a Ctrl+c egy változatát, ahol  a kurzor alatt álló szót fogjuk kijelölni és vágólapra küldeni, majd a szó után állítjuk a kurzort.

Ime:

A Ctrl+Windows+c -hez rendeli a következőket.

SZERKESZTÉSHEZ: Ezekhez nincs beillesztett kód. Jó úgy, ha csak szimpla felsorolás és nincs a kód kódként kezelve

Send "^{Left}": Ctrl + balra
Send "^+{Right}":Ctrl + Shift + jobbra
Send "^c": Ctrl + c
Send "^{Right}": Ctrl + jobbra

4. Folytatás következik

Arra kell vigyázni, ha kutakodsz a neten, hogy az 1.1 és 2.0 verzió között sok különbség van. Érdemes az AutoHotKey helpjét böngészni a V2.0-nál, mert nagyon sok példát, tippet mutat.

A következő cikkben egy alkalmazásban kitöltünk egy formot.

Addig is:

Jó tesztet! Hajrá!

Megosztás

Íratkozzon fel hírlevelünkre!

Kapcsolódó cikkek

Mi a különbség a szoftvertesztelés és a minőségbiztosítás között?

Bevezető A szoftverfejlesztés világában gyakran keveredik két fogalom: szoftvertesztelés és minőségbiztosítás (Quality Assurance, QA). Sok projektben szinonimaként használják őket, pedig valójában másról van szó. A különbség nem pusztán elméleti: a félreértések rossz folyamatokhoz, hiányos szerepkörökhöz és felesleges költségekhez vezethetnek. Ebben a cikkben áttekintjük, mit takar a két fogalom, hogyan viszonyulnak egymáshoz, és miért fontos, hogy

Az ERP bevezetések valódi költségei – és hogyan előzi meg a tesztelés a kudarcot

Bevezető Minden vállalati vezető, aki valaha ERP bevezetési projekt közelében járt, pontosan tudja azt az érzést, amikor a projekt költségei hónapról hónapra nőnek, a határidők csúsznak, és lassan úgy tűnik, mintha az egész vállalkozás egy feneketlen kútba dobná a pénzt. Az Enterprise Resource Planning rendszerek bevezetése talán a nagyvállalatok legnagyobb informatikai kihívása, és a statisztikák

Miért nem engedhetik meg a nagyvállalatok a professzionális szoftvertesztelés kihagyását?

Miért nem engedhetik meg a nagyvállalatok a professzionális szoftvertesztelés kihagyását?

Bevezető A mai digitális világban minden nagyvállalat vezetője előtt ott áll a kérdés: mennyire megbízhatók azok a szoftverrendszerek, amelyekre a cég napi működése épül? Sokszor úgy gondoljuk, hogy a szoftvertesztelési szolgáltatások csak egy újabb költségsor a már amúgy is feszített költségvetésben. Ez a felfogás azonban olyan súlyos hibának bizonyulhat, amely akár a vállalat létét is

Scroll to Top
Passed
Adatvédelmi áttekintés

Ez a weboldal sütiket használ, hogy a lehető legjobb felhasználói élményt nyújthassuk. A cookie-k információit tárolja a böngészőjében, és olyan funkciókat lát el, mint a felismerés, amikor visszatér a weboldalunkra, és segítjük a csapatunkat abban, hogy megértsék, hogy a weboldal mely részei érdekesek és hasznosak. Adatkezelési tájékoztató