Flash Testování s Selenium webový ovladač

⚡ Chytré shrnutí

Flash Testování s Selenium WebDriver ověřuje, zda videa, hry a animace ve formátu Flash fungují správně. Tento zdroj vysvětluje zachycení vložených objektů SWF, přiřazení ID objektů a automatizaci přehrávání pomocí... Selenium Záznam IDE a třída FlashObjectWebDriver pro spolehlivé ověření.

  • 📌 Hlavní účel: Testování Flashe ověřuje, že vložená média SWF – videa, hry a animace – se chovají přesně tak, jak byly navrženy.
  • 🔎 Výzva lokátoru: XPath nemůže dosáhnout na objekty Flash, takže je vyhledává vyhrazený objekt FlashObjectWebDriver pomocí přiřazeného ID objektu.
  • 🎬 Způsob nahrávání: Selenium IDE zaznamenává akce provedené ve Flash videu a přehrává je zeleným tlačítkem Spustit.
  • 💻 Metoda WebDriveru: Třída FlashObjectWebDriver volá metody Play, StopPlay a SetVariable pro programové ovládání Flashe.
  • ⚠️ Omezení klíče: Flash je zastaralý; FlexMonkium je rozšiřován Selenium IDE při selhání nativního záznamu a přehrávání.

Flash Testování s Selenium webový ovladač

Co je Flash testování?

Testování flash paměti je typ testování používaný k ověření, zda flash videa, hry, filmy atd. fungují podle očekávání. Jinými slovy, testování funkčnosti flash paměti je známé jako Flash testování. Flash je populární software vyvinutý společností Macromedia (nyní koupený společností Adobe). Používá se k vývoji her, aplikací, grafických animací, filmů, Mobilní aplikace hry, programy atd.

In Selenium Automatizace, pokud nejsou prvky nalezeny obecnými lokátory jako id, třída, jméno atd, pak XPath je nutné najít prvek na webové stránce, aby bylo možné s tímto konkrétním prvkem provést operaci. Ale ve Flash testování, XPath se nepodaří přistupovat k objektu Flash. Pro nalezení objektu Flash v jakékoli aplikaci je tedy vyžadován objekt Flashwebdriver.

Flash testování

Zde uvidíte, jak spustit flash Testování a jak provést flash testování Selenium.

Předpoklad pro Flash testování

Než začnete, je třeba splnit následující požadavky pro testování flashové aplikace:

  1. Flash aplikace.
  2. Podporovaný webový prohlížeč.
  3. Pluginy Adobe Flash Player.

Nástroje- Níže jsou uvedeny testovací nástroje, které jsou užitečné při flash testování.

  1. Selenium
  2. Uživatelské rozhraní mýdla
  3. TestComplete
  4. Testovací studio atd.

Selenium je velmi populární nástroj pro webové testování. Můžete si vytvořit framework napříč různými platformami a v různých jazycích. Je to open source nástroj, který lze stáhnout z oficiálních webových stránek. Je snadno konfigurovatelný, použitelný a implementovatelný.

Jak se Flash testování liší od ostatních prvků

Nyní, když jsou připraveny předpoklady, je užitečné pochopit, proč se Flash během testování chová jinak než standardní prvky HTML.

  • Proč je obtížné zachytit objekty v blesku? Jak se to řeší?

Flash je zastaralá technologie. Je obtížné zachytit objekt Flash, protože se liší od HTML. Flash je také vložený soubor SWF (Small Web Format). Je také obtížné přistupovat k objektu Flash na mobilním zařízení.

Developing Flash je těžší než vývojping HTML stránku z pohledu SEO (optimalizace pro vyhledávače), protože Flash není pro vyhledávače plně čitelný. Nicméně, pokročilé technologie jako HTML 5 se zavádějí k překonání problémů, jako je výkon a zabezpečení.

  • Jakými způsoby se testuje flashová aplikace?

Flash aplikace se testují dvěma způsoby:

  • Manuální - Objekt Flash můžete otestovat ručním provedením testovacích případů, protože je to jednoduché a snadné. Po opravě chyby se ujistěte, že flash funguje správně podle očekávání, a poskytněte odhlášení.
  • Automatizace - Skript napíšete pomocí libovolného automatizačního nástroje, jako je Selenium, SoapUI, TestCompleteatd. a spusťte skript.
  • Rozdíl mezi Flashem a ostatními prvky.

Jak již bylo zmíněno výše, hlavní rozdíl mezi Flashem a ostatními prvky spočívá v tom, že Flash je vložen do souborů SWF, zatímco ostatní prvky jsou vloženy do souborů HTML. Proto je HTML ve srovnání s Flashem snadněji zachytitelné.

Jak lze získat ID objektu Flash z flash videa / flash aplikace

Jakmile víte, jak se Flash liší od HTML, dalším krokem je nalezení samotného objektu Flash pomocí jeho ID.

Na jakékoli webové stránce se tag <object> používá pro vložená multimédia (jako Flash, ActiveX, video atd.). Znamená to „vložit“ do dokumentu HTML. Tento tag definuje kontejner vložený do tagů <object /> nebo <embed /> v dokumentu HTML pro interaktivní obsah nebo externí aplikaci. Název objektu se používá k nalezení objektu Flash na webových stránkách.

Například v níže uvedeném příkladu vidíte, že flash film je definován v tagu „embed“ v dokumentu nebo souboru HTML.

Příklad:

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

Použití ID objektu k nalezení prvků Flash.

K vyhledání objektu Flash můžete použít atributy flash, jako je ID objektu. A díky tomu na něm můžete provádět operace podle potřeby, jako je přehrávání, zastavení atd.

Jak již bylo zmíněno, k objektům Flash nelze přistupovat pomocí XPath. Aby tedy vývojář mohl s těmito objekty provést jakoukoli akci, musí jim přiřadit příslušné ID objektu.

Níže uvedená obrazovka ukazuje, že pro Flash je přiřazeno ID objektu „MyFlashMovie“:

ID Flash objektu Flash Movie / Flash App

Jak automatizovat používání Flash Selenium IDE nahrávání

S přiřazeným ID objektu můžete zaznamenávat interakce ve Flash filmu přímo prostřednictvím Selenium SDI.

Můžete také automatizovat použití blesku Selenium SDI.

Krok 1) Musíte otevřít flash aplikaci a poté Selenium IDE, jak je znázorněno na níže uvedené obrazovce:

Automatizujte používání Flash Selenium IDE nahrávání

Krok 2) Nyní klikněte na „červené tlačítko nahrávání“ na pravé straně a začněte provádět operace s Flash videem. Poté najdete nahraný skript, jak je znázorněno níže:

Automatizujte používání Flash Selenium IDE nahrávání

Po nahrání, pokud chce uživatel spustit skript, může kliknout na „zelené tlačítko Spustit“, jak je znázorněno na níže uvedené obrazovce. Selenium IDE spustí skript krok za krokem.

Automatizujte používání Flash Selenium IDE nahrávání

Jak automatizovat používání Flash Selenium Webdriver

Pro větší kontrolu než jen nahrávání nabízí, Selenium WebDriver umožňuje programově řídit objekt Flash.

Můžete také automatizovat použití blesku Selenium webový ovladač pomocí objektu Flashwebdriver a poté zavolat metodu pro operaci s objektem Flash. Musíte stáhnout soubory jar flashwebdriver:

Krok 1) Po stažení přidejte soubor JAR do projektu, jak je znázorněno na níže uvedené obrazovce.

Přidat jar soubor Flash do Selenium projekt

Krok 2) V souboru Flash JAR se nachází samostatná třída flashobjectwebdriver. Implementujte třídu flashWebdriver „myFlashmovie“ do svého skriptu v Selenu, jak je znázorněno na obrazovce níže.

Implementujte flashWebdriver v Selenium skript

Po přidání třídy webového ovladače „MyFlashMovie“ můžete přistupovat k objektu Flash.

Kdy automatizovat flash testování

Obvykle je potřeba automatizovat testování Flashe, když objekt Flash není snadno dostupný. To má za následek přerušení testu a následné selhání testování objektu Flash.

Vytvoření skriptu Selenium pro testování Flashe

Spojením předchozích kroků je zde kompletní funkční skript, který spouští a ovládá Guru99 demo flashového videa.

Krok 1) Používáte „Guru99” bleskový film pro otestování scénáře s bleskem.

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

Guru99 demo flashového videa pro Selenium Testování

Krok 2) Napište skript do Selenium eclipse a spusťte ho. Následující kód po spuštění provede následující:

  • Otevřete Firefox prohlížeč,
  • Spusťte flash stránku guru99,
  • Přehrajte si flashový film a
  • Poté film zastavte.
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"));
    }
}

Krok 3) Spusťte výše uvedený skript.

Výstup: Po spuštění výše uvedeného skriptu se flashové video začne přehrávat a zastaví atd.

Výzvy ve Flash testování

  • Automatizace flashové aplikace je výzva. Pro automatizaci flashové aplikace můžete použít FlexMonkium, což je doplněk pro Selenium SDI.
  • Můžete narazit na problémy s povolením nahrávání/přehrávání aplikací Flex pomocí Selenium-Integrace Flexmonkium. Řešením je, že uživatel musí nainstalovat a integrovat Flexmonkium s Selenium Pečlivě nainstalujte IDE. Správná instalace umožní nahrávání pro automatizaci flashových aplikací.

Nejčastější dotazy

Společnost Adobe oficiálně ukončila podporu přehrávače Flash Player 31. prosince 2020. Testování Flashe se nyní týká hlavně starších systémů, protože většina aplikací migrovala na HTML5, což... Selenium automatizuje bez speciálních knihoven Flashe.

Obsah Flash se vykresluje uvnitř kompilovaného objektu SWF vloženého do stránky, nikoli jako prvky HTML DOM. Protože XPath prochází DOM, nemůže dosáhnout interních ovládacích prvků Flashe, takže je vyžadováno ID objektu a FlashObjectWebDriver.

FlexMonkium je doplněk, který se integruje s Selenium IDE pro povolení nahrávání a přehrávání pro aplikace Flex a Flash. Správná instalace umožňuje testerům zachytit a přehrát akce na jinak nepřístupných objektech Flash.

Nástroje pro vizuální testování založené na umělé inteligenci rozpoznávají prvky Flash na obrazovce prostřednictvím rozpoznávání obrázků a vzorů, nikoli pomocí DOM. To umožňuje týmům ověřit animace a interakce, které tradiční lokátory nedokážou detekovat.

Ano. Nástroje s podporou umělé inteligence analyzují stávající kroky testování Flashe a navrhují ekvivalentní lokátory a skripty HTML5. To urychluje migraci na moderní frameworky, jako je Selenium WebDriver a zároveň snižuje nutnost ručního přepracování.

Shrňte tento příspěvek takto: