Flash Testiranje sa Selenium webdriver

โšก Pametni saลพetak

Flash Testiranje sa Selenium WebDriver provjerava ispravno funkcioniraju li videozapisi, igre i animacije temeljene na Flashu. Ovaj resurs objaลกnjava snimanje ugraฤ‘enih SWF objekata, dodjeljivanje ID-ova objekata i automatizaciju reprodukcije pomoฤ‡u Selenium IDE snimanje i klasa FlashObjectWebDriver za pouzdanu validaciju.

  • ๐Ÿ“Œ Osnovna svrha: Flash testiranje potvrฤ‘uje da se ugraฤ‘eni SWF mediji - videozapisi, igre i animacije - ponaลกaju toฤno onako kako je dizajnirano.
  • ๐Ÿ”Ž Izazov lokatora: XPath ne moลพe dosegnuti Flash objekte, pa ih namjenski objekt FlashObjectWebDriver locira putem dodijeljenog ID-a objekta.
  • ๐ŸŽฌ Naฤin snimanja: Selenium IDE snima radnje izvrลกene na Flash filmu i reproducira ih zelenim gumbom Pokreni.
  • ๐Ÿ’ป Metoda WebDrivera: Klasa FlashObjectWebDriver poziva Play, StopPlay i SetVariable za programsko upravljanje Flashom.
  • โš ๏ธ Kljuฤno ograniฤenje: Flash je zastario; FlexMonkium se proลกiruje Selenium IDE kada izvorno snimanje i reprodukcija ne uspiju.

Flash Testiranje sa Selenium webdriver

ล to je Flash testiranje?

Testiranje bljeskalice je vrsta testiranja koja se koristi za provjeru rade li videozapisi, igre, filmovi itd. temeljeni na bljeskalici kako se oฤekuje. Drugim rijeฤima, testiranje funkcionalnosti bljeskalice poznato je kao Flash testiranje. Flash je popularan softver koji je razvila tvrtka Macromedia (sada ga je preuzeo Adobe). Koristi se za razvoj igara, aplikacija, grafiฤkih animacija, filmova, Kontakt broj igre, programi itd.

In Selenium Automatizacija, ako elementi nisu pronaฤ‘eni opฤ‡im lokatorima poput ID-a, klase, imena itd, A zatim XPath potrebno je pronaฤ‡i element na web stranici kako bi se izvrลกila operacija na tom odreฤ‘enom elementu. Ali u Flash testiranju, XPath ne uspijeva pristupiti flash objektu. Dakle, za pronalaลพenje flash objekta u bilo kojoj aplikaciji potreban je Flashwebdriver objekt.

Flash testiranje

Ovdje ฤ‡ete vidjeti kako izvrลกiti flash Ispitivanje i kako napraviti flash testiranje s Selenium.

Preduvjet za Flash testiranje

Prije nego ลกto poฤnete, sljedeฤ‡i su zahtjevi za testiranje flash aplikacije:

  1. Flash aplikacija.
  2. Podrลพani web preglednik.
  3. Dodaci za Adobe Flash player.

Alati- Ispod su alati za testiranje koji su korisni u flash testiranju.

  1. Selenium
  2. UI sapuna
  3. TestComplete
  4. Test Studio itd.

Selenium je vrlo popularan alat za web testiranje. Moลพete stvoriti okvir na razliฤitim platformama i u drugom jeziku. To je alat otvorenog koda i moลพe se preuzeti sa sluลพbene web stranice. Jednostavan je za konfiguriranje, koriลกtenje i implementaciju.

Po ฤemu se Flash testiranje razlikuje od ostalih elemenata

Sada kada su preduvjeti spremni, korisno je razumjeti zaลกto se Flash ponaลกa drugaฤije od standardnih HTML elemenata tijekom testiranja.

  • Zaลกto je snimanje bljeskalice teลกko? Kako se to rjeลกava?

Flash je zastarjela tehnologija. Teลกko je snimiti flash objekt jer se razlikuje od HTML-a. Takoฤ‘er, Flash je ugraฤ‘ena SWF datoteka (mali web format). Takoฤ‘er je teลกko pristupiti Flash objektu na mobilnom ureฤ‘aju.

Razvojping Flash je teลพi od razvojaping HTML stranicu iz SEO (optimizacija za traลพilice) perspektive jer Flash nije u potpunosti ฤitljiv traลพilici. Meฤ‘utim, napredne tehnologije poput HTML-a 5 uvedene su kako bi se prevladali problemi poput performansi i sigurnosti.

  • Na koje se naฤine testira flash aplikacija?

Flash aplikacije se testiraju na dva naฤina:

  • Ruฤno - Flash objekt moลพete testirati ruฤnim izvoฤ‘enjem testnih sluฤajeva jer ga je jednostavno i lako testirati. Nakon ispravljanja bugova, provjerite radi li bljeskalica ispravno prema oฤekivanjima i date odjavu.
  • Automatizacija - Piลกete skriptu koristeฤ‡i bilo koji alat za automatizaciju poput Selenium, SoapUI, TestCompleteitd. i izvrลกite skriptu.
  • Razlika izmeฤ‘u Flasha i ostalih elemenata.

Kao ลกto je gore spomenuto, glavna razlika izmeฤ‘u Flasha i ostalih elemenata je u tome ลกto je Flash ugraฤ‘en u SWF datoteke, dok su drugi elementi ugraฤ‘eni u HTML datoteke. Zato je HTML lakลกe snimiti u usporedbi s Flashom.

Kako moลพete dobiti ID flash objekta flash filma / flash aplikacije

Nakon ลกto shvatite kako se Flash razlikuje od HTML-a, sljedeฤ‡i korak je lociranje samog Flash objekta putem njegovog ID-a objekta.

Na bilo kojoj web stranici, oznaka <object> se koristi za bilo koji ugraฤ‘eni multimedijski sadrลพaj (poput Flasha, ActiveX-a, videa itd.). Implicira "ugraฤ‘ivanje" unutar HTML dokumenta. Ova oznaka definira spremnik ugraฤ‘en u oznake <object /> ili <embed /> u HTML dokumentu za interaktivni sadrลพaj ili vanjsku aplikaciju. Naziv objekta koristi se za lociranje Flash objekta na web stranicama.

Na primjer, u donjem primjeru moลพete vidjeti da je flash film definiran u oznaci "embed" u HTML dokumentu ili datoteci.

Primjer:

/* Html page*/
<html>
<body marginwidth="0" marginheight="0">
<embed width="100%" height="100%" name="plugin" src="http://video/movie_play.swf" type="application/flash"/>
</body>
</html>

Koriลกtenje ID-a objekta za pronalaลพenje Flash elemenata.

Moลพete koristiti flash atribute kao ลกto je ID objekta da biste locirali flash objekt. I na taj naฤin moลพete izvoditi radnje na njemu prema potrebi kao ลกto su reprodukcija, zaustavljanje itd.

Kao ลกto je veฤ‡ spomenuto, Flash objektima se ne moลพe pristupiti pomoฤ‡u XPath-a. Dakle, da bi se na tim objektima izvrลกila bilo kakva radnja, programer im mora dodijeliti odgovarajuฤ‡i ID objekta.

Donji zaslon prikazuje ID objekta โ€žMyFlashMovieโ€œ dodijeljen Flashu:

ID Flash objekta Flash filma / Flash aplikacije

Kako automatizirati koriลกtenje Flasha Selenium IDE snimanje

S dodijeljenim ID-om objekta, moลพete izravno snimati interakcije na Flash filmu putem Selenium SDI.

Takoฤ‘er moลพete automatizirati bljeskalicu pomoฤ‡u Selenium SDI.

Korak 1) Morate otvoriti flash aplikaciju, a zatim Selenium IDE kao ลกto je prikazano na donjoj slici ekrana:

Automatizirajte koriลกtenje Flasha Selenium IDE snimanje

Korak 2) Sada kliknite na "crveni gumb za snimanje" s desne strane i poฤnite s operacijama na Flash filmu, a zatim ฤ‡ete pronaฤ‡i snimljeni scenarij kao ลกto je prikazano dolje:

Automatizirajte koriลกtenje Flasha Selenium IDE snimanje

Nakon snimanja, ako korisnik ลพeli izvrลกiti skriptu, moลพe kliknuti na "zeleni gumb za izvrลกavanje" kao ลกto je prikazano na donjem zaslonu. Selenium IDE ฤ‡e izvrลกiti skriptu korak po korak.

Automatizirajte koriลกtenje Flasha Selenium IDE snimanje

Kako automatizirati koriลกtenje Flasha Selenium Webdriver

Za veฤ‡u kontrolu od snimanja koje nudi, Selenium WebDriver vam omoguฤ‡uje programsko upravljanje Flash objektom.

Takoฤ‘er moลพete automatizirati bljeskalicu pomoฤ‡u Selenium web upravljaฤki program putem objekta Flashwebdriver, a zatim pozvati metodu za rad na flash objektu. Morate preuzimanje flashwebdriver jar datoteka:

Korak 1) Nakon preuzimanja, dodajte jar datoteku u svoj projekt kao ลกto je prikazano na donjoj slici.

Dodajte Flash jar datoteku u Selenium projekt

Korak 2) Ispod flash jar datoteke nalazi se zasebna klasa flashobjectwebdriver. Implementirajte flashWebdriver "myFlashmovie" u svoj selenium skript kao ลกto je prikazano na zaslonu ispod.

Implementirajte flashWebdriver u Selenium rukopis

Nakon dodavanja klase web upravljaฤkog programa โ€žMyFlashMovieโ€œ, moลพete pristupiti Flash objektu.

Kada automatizirati flash testiranje

Obiฤno je potrebno automatizirati Flash testiranje kada Flash objekt nije lako dostupan. To rezultira prekidom testiranja i stoga neuspjehom testiranja Flash objekta.

Izrada selenijum skripte za Flash testiranje

Spajanjem prethodnih koraka, evo kompletnog radnog skripta koji pokreฤ‡e i kontrolira Guru99 demo flash filma.

Korak 1) Koristite "Guru99โ€ bljeskalica za testiranje scenarija s bljeskalicom.

https://demo.guru99.com/test/flash-testing.html

Guru99 demo flash filma za Selenium testiranje

Korak 2) Napiลกi skriptu Selenium eclipse i izvrลกiti ga. Donji kod, kada se izvrลกi, uฤinit ฤ‡e sljedeฤ‡e:

  • Otvorite Firefox preglednik,
  • Pokrenite flash stranicu guru99,
  • Pustite flash film i
  • Zatim zaustavite film.
import org.openqa.selenium.firefox.FirefoxDriver;
import Flash.FlashObjectWebDriver;
public class Flash {
    public static void main(String[] args) throws InterruptedException {
        // Open firefox browser
        FirefoxDriver driver = new FirefoxDriver();
        // Maximize browser
        driver.manage().window().maximize();
        // Under Flash jar file there is a separate FlashObjectWebDriver class
        FlashObjectWebDriver flashApp = new FlashObjectWebDriver(driver, "myFlashMovie");
        // Pass the URL of video
        driver.get("https://demo.guru99.com/test/flash-testing.html");
        Thread.sleep(5000);
        flashApp.callFlashObject("Play");
        Thread.sleep(5000);
        flashApp.callFlashObject("StopPlay");
        Thread.sleep(5000);
        flashApp.callFlashObject("SetVariable","/:message","Flash testing using selenium Webdriver");
        System.out.println(flashApp.callFlashObject("GetVariable","/:message"));
    }
}

Korak 3) Izvrลกite gornji skript.

Izlaz: Nakon izvrลกavanja gornjeg skripta, flash film poฤinje se reproducirati i zaustavljati itd.

Izazovi u Flash testiranju

  • Automatizacija flash aplikacije je izazov. Za automatizaciju flash aplikacije moลพete koristiti FlexMonkium, dodatak za Selenium SDI.
  • Moลพda ฤ‡ete se suoฤiti s problemima prilikom omoguฤ‡avanja snimanja/reprodukcije Flex aplikacija pomoฤ‡u Selenium-Integracija s Flexmonkiumom. Rjeลกenje je da korisnik treba instalirati i integrirati Flexmonkium s Selenium IDE paลพljivo. Ispravna instalacija omoguฤ‡it ฤ‡e snimanje za automatizaciju flash aplikacija.

Pitanja i odgovori

Adobe je sluลพbeno ukinuo podrลกku za Flash Player 31. prosinca 2020. Testiranje Flasha sada se uglavnom primjenjuje na naslijeฤ‘ene sustave, buduฤ‡i da je veฤ‡ina aplikacija preลกla na HTML5, koji Selenium automatizira bez posebnih Flash biblioteka.

Flash sadrลพaj se prikazuje unutar kompiliranog SWF objekta ugraฤ‘enog u stranicu, a ne kao HTML DOM elementi. Buduฤ‡i da XPath prolazi kroz DOM, ne moลพe dosegnuti interne Flash kontrole, pa su potrebni ID objekta i FlashObjectWebDriver.

FlexMonkium je dodatak koji se integrira s Selenium IDE za omoguฤ‡avanje snimanja i reprodukcije za Flex i Flash aplikacije. Ispravna instalacija omoguฤ‡uje testerima snimanje i reprodukciju radnji na inaฤe nedostupnim Flash objektima.

Alati za vizualno testiranje temeljeni na umjetnoj inteligenciji prepoznaju Flash elemente na zaslonu putem prepoznavanja slika i uzoraka, a ne DOM-a. To omoguฤ‡uje timovima da provjere animacije i interakcije koje tradicionalni lokatori ne mogu otkriti.

Da. Alati potpomognuti umjetnom inteligencijom analiziraju postojeฤ‡e korake testiranja Flasha i predlaลพu ekvivalentne HTML5 lokatore i skripte. To ubrzava migraciju na moderne okvire poput Selenium WebDriver uz smanjenje ruฤne prerade.

Saลพmite ovu objavu uz: