Flash-testimine koos Selenium Veebidraiver

⚡ Nutikas kokkuvõte

Flash-testimine koos Selenium WebDriver kontrollib, kas Flash-põhised videod, mängud ja animatsioonid toimivad õigesti. See ressurss selgitab manustatud SWF-objektide jäädvustamist, objektide ID-de määramist ja taasesituse automatiseerimist, kasutades Selenium IDE-salvestus ja FlashObjectWebDriver klass usaldusväärseks valideerimiseks.

  • 📌 Põhieesmärk: Flashi testimine kinnitab, et manustatud SWF-meedia – videod, mängud ja animatsioonid – käituvad täpselt nii, nagu ette nähtud.
  • 🔎 Lokaatori väljakutse: XPath ei pääse Flashi objektideni ligi, seega leiab need määratud objekti ID kaudu spetsiaalne FlashObjectWebDriver objekt.
  • 🎬 Salvestusmeetod: Selenium IDE salvestab Flash-filmil tehtud toimingud ja esitab need rohelise nupuga „Käivita“.
  • 💻 WebDriveri meetod: Klass FlashObjectWebDriver kutsub Flashi programmiliseks juhtimiseks välja funktsioone Play, StopPlay ja SetVariable.
  • ⚠️ Peamine piirang: Flash on aegunud; FlexMonkium laieneb Selenium IDE, kui natiivne salvestamine ja taasesitus ebaõnnestuvad.

Flash-testimine koos Selenium Veebidraiver

Mis on välktestimine?

Flashi testimine on testimistüüp, mida kasutatakse selleks, et kontrollida, kas flash-põhised videod, mängud, filmid jne töötavad ootuspäraselt. Teisisõnu, flashi funktsionaalsuse testimist nimetatakse Flash testimine. Flash on populaarne tarkvara, mille on välja töötanud Macromedia (nüüdseks Adobe omanduses). Seda kasutatakse mängude, rakenduste, graafikapõhiste animatsioonide, filmide, mobiilne mänge, programme jne.

In Selenium Automatiseerimine, kui elemente ei leia üldlokaatorid nagu id, klass, nimi jne, Siis XPath on vaja veebilehelt elemendi leidmiseks, et selle konkreetse elemendiga toimingut teha. Kuid Flashi testimisel XPath ei pääse flash-objektile ligi. Seega on flash-objekti leidmiseks mis tahes rakenduses vaja Flashwebdriver-objekti.

Flash testimine

Siin näete, kuidas flash-i käivitada Testimine ja kuidas teha välkkatseid Selenium.

Flash testimise eeltingimus

Enne alustamist on Flashi rakenduse testimiseks vaja järgmist:

  1. Flashi rakendus.
  2. Toetatud veebibrauser.
  3. Adobe Flash Playeri pistikprogrammid.

Tööriistad- Allpool on testimisriistad, mis on välktestimisel kasulikud.

  1. Selenium
  2. Seebi kasutajaliides
  3. TestComplete
  4. Teststuudio jne.

Selenium on väga populaarne veebitestimise tööriist. Saate luua raamistiku erinevatel platvormidel ja erinevates keeltes. See on avatud lähtekoodiga tööriist ja selle saab alla laadida ametlikult veebisaidilt. Seda on lihtne seadistada, kasutada ja rakendada.

Kuidas Flashi testimine teistest elementidest erineb

Nüüd, kui eeltingimused on valmis, on kasulik mõista, miks Flash käitub testimise ajal tavalistest HTML-elementidest erinevalt.

  • Miks on välklambiga objektide jäädvustamine keeruline? Kuidas see lahendatakse?

Flash on aegunud tehnoloogia. Flashi objekti on keeruline jäädvustada, kuna see erineb HTML-ist. Lisaks on Flash manustatud SWF-fail (väike veebivorming). Samuti on mobiilseadmes Flashi objektile keeruline juurde pääseda.

Developing Flash on keerulisem kui Developing HTML-leht SEO (otsingumootorite optimeerimise) vaatenurgast, kuna otsingumootor ei suuda Flashi täielikult lugeda. Siiski on jõudluse ja turvalisusega seotud probleemide lahendamiseks kasutusele võetud täiustatud tehnoloogiad, näiteks HTML 5.

  • Kuidas Flashi rakendust testitakse?

Flash-rakendusi testitakse kahel viisil:

  • Käsitsi - Saate testida Flash-objekti, käivitades testjuhtumid käsitsi, kuna seda on lihtne ja lihtne testida. Pärast veaparandust veenduge, et välklamp töötab ootuspäraselt, ja logige välja.
  • Automaatika - Sa kirjutad skripti mis tahes automatiseerimistööriista abil, näiteks Selenium, SoapUI, TestCompletejne ja käivitage skript.
  • Erinevus Flashi ja teiste elementide vahel.

Nagu eespool mainitud, on Flashi ja teiste elementide peamine erinevus see, et Flash on manustatud SWF-failidesse, teised elemendid aga HTML-failidesse. Seetõttu on HTML-i Flashiga võrreldes lihtsam jäädvustada.

Kuidas saada Flash-filmi/Flash-rakenduse Flash-objekti ID?

Kui teate, kuidas Flash HTML-ist erineb, on järgmine samm Flash-objekti enda leidmine selle objekti ID abil.

Igal veebilehel kasutatakse silti <object> mis tahes manustatud multimeedia (nt Flash, ActiveX, video jne) jaoks. See viitab HTML-dokumendis olevale „embed”-ile. See silt määratleb konteineri, mis on manustatud HTML-dokumendi siltidesse <object /> või <embed /> interaktiivse sisu või välise rakenduse jaoks. Objekti nime kasutatakse Flash-objekti leidmiseks veebilehtedel.

Näiteks allolevas näites on flash-film defineeritud HTML-dokumendis või -failis sildil „embed”.

Näide:

/* 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>

Objekti ID kasutamine Flashi elementide leidmiseks.

Välguobjekti asukoha leidmiseks saate kasutada välgu atribuute, nagu objekti ID. Ja seeläbi saate sellega teha vajalikke toiminguid, nagu mängida, peatada jne.

Nagu juba mainitud, ei pääse Flashi objektidele XPathi abil ligi. Seega peab arendaja nende objektidega toimingute tegemiseks määrama sobiva objekti ID.

Allolev ekraanipilt näitab, et Flashile on määratud objekti ID „MyFlashMovie”:

Flash-filmi / Flash-rakenduse Flash-objekti ID

Kuidas automatiseerida Flashi kasutamist Selenium IDE salvestus

Kui objekti ID on määratud, saate Flash-filmi interaktsioone otse salvestada Selenium SDI.

Samuti saate välklambi abil automatiseerida Selenium SDI.

Step 1) Peate avama Flashi rakenduse ja seejärel Selenium IDE, nagu on näidatud alloleval ekraanipildil:

Automatiseerige Flash kasutades Selenium IDE salvestamine

Step 2) Nüüd klõpsa paremal küljel asuvale punasele salvestusnupule ja alusta Flash-filmiga toiminguid ning seejärel leiad salvestatud skripti, nagu allpool näidatud:

Automatiseerige Flash kasutades Selenium IDE salvestamine

Pärast salvestamist, kui kasutaja soovib skripti käivitada, saab ta klõpsata alloleval ekraanipildil näidatud rohelisel käivitusnupul. Selenium IDE käivitab skripti samm-sammult.

Automatiseerige Flash kasutades Selenium IDE salvestamine

Kuidas automatiseerida Flashi kasutamist Selenium Veebidraiver

Rohkem kontrolli pakkumiste salvestamise asemel Selenium WebDriver võimaldab teil Flashi objekti programmiliselt juhtida.

Samuti saate välklambi abil automatiseerida Selenium veebidraiverit Flashwebdriver objekti kaudu ja seejärel kutsuda meetodit, mis opereerib Flash-objektiga. Teil on vaja laadige alla flashwebdriver jar failid:

Step 1) Pärast allalaadimist lisage JAR-fail oma projekti, nagu on näidatud alloleval ekraanipildil.

Lisa Flashi jar-fail Selenium projekt

Step 2) Flashi JAR-faili all on eraldi flashobjectwebdriver klass. Rakenda oma seleeni skriptis flashWebdriver klass „myFlashmovie”, nagu on näidatud alloleval ekraanipildil.

Rakenda flashWebdriver sisse Selenium käsikiri

Pärast veebidraiveri klassi „MyFlashMovie” lisamist saate Flashi objektile ligi pääseda.

Millal automatiseerida välklambi testimist

Tavaliselt tuleb Flashi testimine automatiseerida, kui Flashi objekt pole kergesti ligipääsetav. Selle tulemusel test katkestatakse ja Flashi objekti ei õnnestu testida.

Seleeni skripti loomine Flashi testimiseks

Eelnevad sammud kokku võttes on siin täielikult toimiv skript, mis käivitab ja juhib Guru99 demo-välkfilm.

Step 1) Sa kasutad funktsiooni „Guru99-tolline välkfilm välgustsenaariumi testimiseks.

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

Guru99 demo flash-filmi jaoks Selenium testimine

Step 2) Kirjutage sisse skript Selenium eclipse ja käivitage see. Allolev kood teeb käivitamisel järgmist:

  • avage Firefox brauser,
  • Käivitage guru99 välklamp,
  • Mängi flash-filmi ja
  • Seejärel peatage 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"));
    }
}

Step 3) Käivita ülaltoodud skript.

Väljund: Ülaltoodud skripti käivitamisel hakkab välkfilm mängima ja peatub jne.

Välktestimise väljakutsed

  • Flash-rakenduse automatiseerimine on keeruline. Flash-rakenduse automatiseerimiseks saate kasutada FlexMonkiumi, mis on lisandmoodul Selenium SDI.
  • Flexi rakenduste salvestamise/taasesituse lubamisel võib teil tekkida probleeme, kasutades Selenium-Flexmonkiumi integratsioon. Lahendus seisneb selles, et kasutaja peab Flexmonkiumi installima ja integreerima Selenium IDE hoolikalt. Õige installimine võimaldab salvestamist Flash-rakenduste automatiseerimiseks.

KKK

Adobe lõpetas ametlikult Flash Playeri toe 31. detsembril 2020. Flashi testimine kehtib nüüd peamiselt vanemate süsteemide kohta, kuna enamik rakendusi on migreerunud HTML5-le, mis Selenium automatiseerib ilma spetsiaalsete Flashi teekideta.

Flashi sisu renderdatakse lehte manustatud kompileeritud SWF-objekti sees, mitte HTML DOM-elementidena. Kuna XPath läbib DOM-i, ei pääse see sisemiste Flashi juhtelementideni, seega on vaja objekti ID-d ja FlashObjectWebDriverit.

FlexMonkium on lisandmoodul, mis integreerub Selenium IDE Flexi ja Flashi rakenduste salvestamise ja taasesituse võimaldamiseks. Õige installimine võimaldab testijatel jäädvustada ja taasesitada toiminguid muidu ligipääsmatutel Flashi objektidel.

Tehisintellektil põhinevad visuaalse testimise tööriistad tunnevad ekraanil kuvatavaid Flashi elemente ära pildi ja mustrituvastuse, mitte DOM-i kaudu. See võimaldab meeskondadel valideerida animatsioone ja interaktsioone, mida traditsioonilised lokaatorid ei suuda tuvastada.

Jah. Tehisintellektiga toetatud tööriistad analüüsivad olemasolevaid Flashi testimisetappe ja pakuvad välja samaväärseid HTML5 lokaatoreid ja skripte. See kiirendab migratsiooni tänapäevastele raamistikele, näiteks Selenium WebDriver, vähendades samal ajal käsitsi ümbertöötamist.

Võta see postitus kokku järgmiselt: