introduction sikuli gui automation tool sikuli tutorial 1
Ako vždy sa snažíme prinášať nové veci, aby sme sa naučili pre našich čitateľov. Dnes sa pozrime na zaujímavý nástroj na automatizáciu grafického používateľského rozhrania - Sikuli.
„Automatizujte všetko, čo vidíte“ pomocou automatizačného nástroja Sikuli Graphical User Interface (GUI) - Kompletný sprievodca pre začiatočníkov rýchlo nastaviť a začnite používať nástroj Sikuli Script pomocou týchto podrobných Sikuli tutoriálov.
Sikuli automatizuje všetko, čo vidíte na obrazovke, pomocou metódy rozpoznávania obrazu na identifikáciu prvkov grafického používateľského rozhrania. Skript Sikuli umožňuje používateľom automatizovať interakciu GUI pomocou snímok obrazovky.
Zoznam tutoriálov v tejto sérii Sikuli
Túto sériu sme rozdelili na 3 časti:
Výukový program č. 1: Ako to funguje, ako vytvoriť jednoduchý projekt Sikuli.
Výukový program č. 2: Ako je možné použiť Sikuli s webovým ovládačom selénu na automatizáciu webových stránok.
Výukový program č. 3: Automatizácia aplikácií založených na blesku pomocou nástroja Sikuli
Čo sa dozviete:
Nástroj na automatizáciu grafického používateľského rozhrania Sikuli
Začnime 1. časťou tejto série.
Sikuli je nástroj na automatizáciu grafických používateľských rozhraní (GUI) pomocou metódy „Visual Image Match“. V Sikuli by sa mali všetky webové prvky brať ako obrázok a ukladať sa do projektu. Sikuli spustí interakcie GUI na základe vizuálnej zhody obrazu, teda obrázka, ktorý sme spolu so všetkými metódami odovzdali ako parameter.
Sikuli môže byť veľmi užitočný na automatizáciu flash objektov (ktoré nemajú ID alebo meno). Môže to byť užitočné v situácii, keď máme stabilné grafické používateľské rozhranie (tj. Komponenty grafického používateľského rozhrania sa nemenia).
Aj aplikácie založené na oknách je možné pomocou Sikuli automatizovať. Sikuli poskytuje veľmi priateľský súbor Sikuli-script.jar, ktorý sa dá ľahko použiť spolu so selénom WebDriver. Pomocou Sikuli môžeme dokonca automatizovať Adobe Video / Audio prehrávač, Flash Games na webe. Vďaka jednoduchému API uľahčuje kódovanie.
Praktické použitie
- Sikuli možno použiť na automatizáciu objektov Flash / webových stránok Flash.
- Môže byť užitočné automatizovať aplikáciu založenú na Window. Môžeme automatizovať to, čo vidíme na obrazovke.
- Poskytuje jednoduché API. tj ku všetkým metódam je možné pristupovať pomocou objektov triedy obrazovky.
- Môže byť ľahko integrovaný so selénom a všetkými ostatnými nástrojmi.
- Pomocou Sikuli môžeme automatizovať desktopové aplikácie.
- Väčšina nástrojov na testovanie automatizácie nebude podporovať automatizáciu objektov flash (napr. Selén). Sikuli poskytuje rozsiahlu podporu pre automatizáciu flash objektov.
- Využíva výkonný mechanizmus „Visual Match“ na automatizáciu desktopových a flash objektov.
Výhody
- Open-source nástroj.
- Jednou z najväčších výhod programu Sikuli je, že môže ľahko automatizovať objekty Flash.
- Uľahčuje automatizáciu aplikácií systému Windows.
- Ak testujete vyvíjanú aplikáciu a nepoznáte ID / názov prvkov, môžete ísť so Sikuli. Skontroluje vzhľad obrázka a ak sa nájde zhoda, bude s ním podľa toho interagovať.
Predpoklady:
Predtým, ako začneme, si musíme stiahnuť a nainštalovať nasledujúci softvér:
- Akýkoľvek nástroj na snímanie obrazovky ( Napríklad, DuckCapture alebo qSnap )
- JDK
- Zatmenie (podrobné kroky tu nainštalovať JDK a Eclipse)
Kroky na vytvorenie projektu Sikuli Java
Krok 1: Sikuli sťahovanie - Stiahnite si Sikuli z tu .
Krok 2: Extrahujte stiahnutý súbor ZIP. Bude obsahovať súbor Sikuli-script.jar. Uložte tento extrahovaný súbor do miestneho systému súborov.
Krok č. 3: Otvorte Eclipse.
Krok č. 4: Vytvorte projekt java File -> New -> Java Project
Krok č. 5:
- Kliknite pravým tlačidlom myši na projekt
- Prejdite na cestu Build-> Configure Build Path
- Prepnite na kartu Knižnice
- Kliknite na tlačidlo „Pridať externé nádoby“ a na ceste k vytvoreniu pridajte súbor Sikuli-Script.jar.
- Kliknite na „OK“
Sikuli-script.jar sa pridá do vašej cesty zostavenia projektu. Hotovo. Teraz môžete začať písať skripty Sikuli vnútri tohto projektu.
Niektoré Sikuliho metódy
# 1) Vytvorenie objektu pre triedu obrazovky
Obrazovka je základnou triedou poskytovanou spoločnosťou Sikuli. Najprv musíme vytvoriť objekt pre túto triedu obrazovky, až potom budeme mať prístup ku všetkým metódam, ktoré poskytuje Sikuli.
Syntax:
Obrazovka s = nová obrazovka ();
slobodný softvér na kopírovanie DVD na MP4
# 2) Kliknite na prvok
Táto metóda slúžila na kliknutie na konkrétny obrázok na obrazovke.
Syntax:
s.click („<>“);
Napríklad,
s.click („test.png“);
# 3) Kliknite pravým tlačidlom myši na prvok
Táto metóda sa používa na kliknutie pravým tlačidlom myši na konkrétny obrázok na obrazovke.
Syntax:
s.rightClick („<>“);
Napríklad,
s.rightClick („test.png“);
# 4) Nájdite prvok
Táto metóda slúžila na nájdenie konkrétneho prvku na obrazovke.
Syntax:
s.find („<>“);
Napríklad,
s.find („test.png“);
# 5) Dvakrát kliknite na prvok
Táto metóda sa použila na spustenie udalosti dvojitého kliknutia na konkrétny obrázok na obrazovke.
Syntax:
s.doubleClick („<>“);
Napríklad,
s.doubleClick („test.png“);
# 6) Skontrolujte, či sa na obrazovke nachádza prvok
Táto metóda sa používa na kontrolu, či sa zadaný prvok nachádza na obrazovke.
Syntax:
s.existuje („<>“);
Napríklad,
s.exists („test.png“);
# 7) Zadajte reťazec do textového poľa
Táto metóda sa používa na zadanie zadaného textu do textového poľa.
Syntax:
s.type („<>”,” Reťazec, ktorý sa má zadať ”);
Napríklad,
s.type („test.png“, „HI !!“);
# 8) Kolečko na konkrétnom obrázku
Táto metóda sa používa na vykonanie akcie krúženia na obrázku prvku.
Syntax:
s.kolo („<>”,<>,<>);
Napríklad,
s.kolo („test.png“, 25,0);
# 9) Presuňte obrázok / prvok myšou
Táto metóda sa používa na presúvanie a presúvanie určeného obrázka zo zdrojovej polohy do cieľovej polohy.
Syntax:
s.dragDrop („<>„,“<>“);
Napríklad,
s.dragDrop („test.png“, „test1.png“);
# 10) Prejdite kurzorom myši na konkrétny obrázok
Táto metóda sa používa na vykonanie udalosti umiestnenia kurzora myši na zadanom obrázku.
Syntax:
s.hover („<>“);
Napríklad,
s.hover („test.png“);
# 11) Vložte skopírovaný reťazec
Táto metóda sa používala na vloženie textu do určeného textového poľa.
Syntax:
s.paste („<>”,” Test ”);
Napríklad,
s.paste („test.png“, „test“);
Príklady Sikuli
# 1) Video YouTube - Pozastavte a prehrajte video
Krok 1) Otvorte odkaz na video z YouTube a pomocou nástroja na snímanie obrazovky zachyťte prehrávanie a pozastavenie elementárnych obrázkov.
Tlačidlo Pozastaviť ( Poznámka: názov súboru je pause.png)
Tlačidlo Prehrať ( Poznámka: názov súboru je play.png)
Skopírujte tieto obrázky do projektu.
Krok 2) Vytvorte balíček vo vnútri vytvoreného projektu Sikuli java a v rámci neho vytvorte triedu s názvom „Youtube“.
Krok č. 3) Do tejto triedy zadajte nasledujúci kód.
package com.test; import org.sikuli.script.FindFailed; import org.sikuli.script.Screen; public class Youtube { public static void main(String() args) throws FindFailed, InterruptedException { // TODO Auto-generated method stub Screen s=new Screen(); s.find('pause.png'); //identify pause button s.click('pause.png'); //click pause button System.out.println('pause button clicked'); s.find('play.png'); //identify play button s.click('play.png'); //click play button } }
Krok # 4) Pravým tlačidlom myši kliknite na triedu a vyberte možnosť Spustiť ako -> Aplikácia Java.
# 2) Otvorte Poznámkový blok a napíšte nejaký text
Krok # 1) Zachyťte ikonu poznámkového bloku na pracovnej ploche na obrazovke.
notepad_icon.png
notepad.png
Krok # dva) Skopírujte tieto obrázky do svojho projektu.
Krok č. 3) Vytvorte vo svojom projekte triedu s názvom „NotepadExample“ a zadajte nasledujúci kód.
package com.test; import org.sikuli.script.FindFailed; import org.sikuli.script.Screen; public class NotepadExample { public static void main(String() args) throws FindFailed { // TODO Auto-generated method stub Screen s=new Screen(); s.click('notepad_icon.png'); s.find('notepad.png'); s.type('notepad.png','This is Nice Sikuli Tutorial!!!!'); } }
Krok č. 4) Pred spustením kódu otvorte obrazovku, ktorá sa má otestovať.
Vykonajte tento súbor kliknutím pravým tlačidlom myši na príkaz Spustiť ako -> Aplikácia Java.
# 3) Presuňte a pustite
Krok 1) Vytvorte snímku obrazovky požadovaných položiek na obrazovke a vložte ju do svojho projektu Sikuli.
( Poznámka: ikona stiahnutia je tu „source.png“ a obrázok kvetu je „destination.png“)
Krok # dva) Vložte tieto obrázky do svojho projektu.
Krok # 3) Vytvorte triedu s názvom „DragAndDrop“ a napíšte nasledujúci kód.
package com.test; import org.sikuli.script.FindFailed; import org.sikuli.script.Screen; public class DragAndDrop { public static void main(String() args) throws FindFailed, InterruptedException { // TODO Auto-generated method stub Screen s=new Screen(); s.find('source.png'); System.out.println('Source image found'); s.find('target.png'); System.out.println('target image found'); s.dragDrop('source.png', 'target.png'); } }
Krok # 4) Tento skript vykonajte kliknutím pravým tlačidlom myši na príkaz Spustiť ako -> Aplikácia Java.
Po vykonaní tohto skriptu sa ikona sťahovania presunie na obrázok a bude označená ako cieľ.
Pred popravou:
Po vykonaní:
Nevýhody tohto nástroja
- Nemôžeme vás ubezpečiť, že zhoda obrázkov bude vždy presná. Niekedy, ak sú na obrazovke k dispozícii dva alebo viac podobných obrázkov, Sikuli sa pokúsi vybrať nesprávny obrázok.
- A ak sa vzhľad obrázka líši vo veľkosti pixelov, bude to mať za následok aj výnimku „Hľadanie zlyhalo“.
- Režisér príliš veľa snímok obrazovky.
- Ak niekto zo snímky obrazovky chýba, bude to mať vplyv na vykonávanie programu.
Ďalšie zdroje:
Záver
Sikuli je veľmi užitočný pri automatizácii bleskových objektov. Môže sa použiť na automatizáciu okenných aplikácií. Je to vynikajúci nástroj na hranie s prvkami na obrazovke na základe ich vizuálu.
O autorovi: Toto je príspevok od Anithy Eswari. V súčasnosti pracuje ako senior skúšobná inžinierka so znalosťami v oblasti manuálneho a automatizovaného testovania a rôznych nástrojov na správu testov.
Ďalšia príručka : V ďalšej časti tejto série sa pozrime podrobne na vytvorenie projektu Sikuli maven a na to, ako integrovať selén so Sikuli.
otázky týkajúce sa manuálneho testovania po dobu 3 rokov
Tento nástroj už používate? Podeľte sa, prosím, o svoje skúsenosti a tipy. Ak chcete začať, ale máte otázky, dajte nám vedieť.
Odporúčané čítanie
- Nástroj na testovanie automatizácie grafického používateľského rozhrania Sikuli - Príručka pre začiatočníkov, časť 2
- 30 najlepších nástrojov na testovanie GUI pre automatizáciu testu GUI (ZOZNAM 2021)
- Výukový program pre automatizáciu SeeTest: Sprievodca nástrojom na automatizáciu mobilných testov
- Osvojenie si základov produktu Rational Robot - IBM Test Automation Tool
- Výukový program Geb - Testovanie automatizácie prehľadávača pomocou nástroja Geb
- Užitočný bezplatný nástroj na snímanie a komentovanie obrazovky pre testerov - kontrola qSnap
- Výukový program Katalon Studio: Nástroj na automatizáciu bezplatných testov, na ktorý ste čakali
- Automatizácia aplikácií založených na blesku pomocou nástroja Sikuli