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: