co je Flash testování?
testování funkčnosti blesku se nazývá testování blesku. Někdy ve vaší aplikaci možná budete muset zkontrolovat konkrétní animační Videa, filmy, hry atd. jak funguje podle očekávání nebo ne. Zde musíme napsat skript, abychom zkontrolovali funkčnost flash a otestovali tento typ aplikace. Flash je software vyvinutý společností Macromedia, který nyní získává společnost Adobe. Používá se k vývoji videoher, filmů, mobilních her pro iOS a Android atd. Pro přehrávání aplikací Flash potřebujeme nějaké pluginy.
předpoklady pro testování blesku pomocí Selenium WebDriver
měli bychom být připraveni s níže uvedenými požadavky na testování aplikace flash pomocí Selenium WebDriver. Zde je seznam předpokladů:
- webová aplikace Flash
- pluginy Adobe Flash Player
- Podpora nativního prohlížeče
pod softwarem editoru potřebným pro aplikace flash.
- Adobe Animate
- Flash Builder
- Flash Develop
- Power Flasher
- Scaleform
pro přehrávání aplikací Flash potřebujeme následující pluginy, které jsou uvedeny následovně:
- OpenFL
- Adobe Air
- Flash Player
- Gnash
Níže jsou uvedeny testovací nástroje potřebné při testování flash.
- selen
- TestComplete
- soap UI
- testovací Studio atd.
jak testovat obsah blesku pomocí selenu?
Obecně platí, že pro interakci s vaším obsahem Flash v selenu nemá rozhraní. V ActionScript jsou naprogramovány soubory Flash, které jsou velmi podobné JavaScriptu. Soubory Flash také obsahují programovací prvky. Například mají také tlačítka, textové pole, přepínače atd. Soubor Flash musí k provedení úkolu zavolat některé interní metody. Například obsah blesku tlačítka může způsobit změnu barvy pozadí obsahu blesku. K záchraně používáme ActionScript, vystavuje třídu nazvanou externí rozhraní pro vývojáře. Tato třída je nejdůležitější, pokud chcete vystavit interní metody souboru Flash vnějšímu světu. Vnější svět je prohlížeč, který je hostitelem obsahu. Pokud tedy vystavíme naše interní metody ze souboru Flash do prohlížeče, můžeme je volat přímo pomocí JavaScriptu.
různé způsoby testování aplikací Flash
aplikace Flash lze testovat dvěma způsoby manuální & automatizace:
manuál: je jednoduché a snadné testovat ručním provedením testovacích případů pro testování objektu Flash.
automatizace: Chcete-li spustit skript, musíme napsat skript pomocí automatizačních nástrojů, jako je TestComplete, Selenium, SoapUI a Test Studio.
rozdíl mezi bleskem a dalšími prvky
Flash je vložen do souborů SWF, kde jsou ostatní prvky vloženy do souborů HTML. Tak, to je důvod, proč ve srovnání s flash HTML je snadné zachytit.
jak můžete získat flash film nebo flash app objekt ID?
na všech webových stránkách definuje značka < objekt > vložený objekt s jakýmikoli multimédii, jako jsou video, ActiveX, Flash, Java applety, ActiveX, PDF atd. na vašich webových stránkách. Označuje „vložit“ do dokumentu HTML. Tato značka popisuje kontejner vložený do < object / > nebo < embed / > tagů v HTML pro interaktivní obsah nebo externí aplikaci. K vyhledání objektu flash na webových stránkách se používá název objektu. Značku <object> můžete také použít k vložení jiné webové stránky do dokumentu HTML.
například film flash je definován ve značce „vložit“ 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/movieplay.swf" type="application/flash"/></body></html>
jak provést testování bleskem pomocí Selenium Webdriver?
Chcete-li importovat knihovnu Flash, musíte si stáhnout soubor Flash Selenium jar. Blesk si můžete stáhnout.soubor jar pro Selenium WebDriver prostřednictvím odkazu https://drive.google.com/drive/folders/0B5v_nInLNoquN3hRbmJFYXpCb28. Po dokončení stahování musíte do projektu přidat soubor jar.
po dokončení všech požadovaných předpokladů musíte zavolat třídu FlashObjectWebDriver. Tato třída se používá k provádění akcí na přehrávačích Flash.
syntaxe:
FlashObjectWebDriver flash = new FlashObjectWebDriver(webDriver, " flash object");
aplikace Flash lze testovat dvěma způsoby:
- vývojář poskytne flash metody pro testování a obejde je pomocí kódu JavaScript.
- nezávislí testeři nemají přístup ke zdrojovému kódu poskytovanému vývojáři, takže testeři používají obrazový nástroj zvaný Sikuli, který používá obrázky k provádění uživatelských akcí.
vytvoření selenového skriptu pro testování bleskem.
pod ukázkou program funguje jako přehrávač videa
k dispozici jsou některé předdefinované metody pro testování aplikací youtube flash.
- playVideo
- pauseVideo
- mute
- setVolume
- seekTo
příklad:
Step1: napište skript selenu v eclipse a spusťte jej. Níže uvedený kód provede při spuštění skriptu následující věci.
- spusťte prohlížeč Chrome
- spusťte web
- přehrajte video
- zastavte video
- Převiňte video
pokud vývojáři poskytují některé metody blesku, pak níže uvedený příklad ukazuje, že ukázková aplikace vyhovovala metodám blesku.Krok 1:
Vytvořte třídu FlashWebDriver a provádějte uživatelské akce v aplikaci flash pomocí JavaScriptu interně.
package com.java.selenium;import org.openqa.selenium.JavascriptExecutor;import org.openqa.selenium.WebDriver;public class FlashTesting{ private final WebDriver webdriver; private final String flashObjectId ; public FlashWebDriver(final WebDriver webdriver,final String flashObjectId) { this.webdriver=webdriver; this.flashObjectId=flashObjectId; } public String click(final String objectId,final String buttonLabel) { return callFlashObject("DoFlashClick",objectId,buttonLabel); } public String click(final String objectId) { return callFlashObject(objectId,""); } public String callFlashObject(final String functionName,final String... args) { final Object result=((JavascriptExecutor) webdriver).executeScript (makeJsFuntion(functionName,args), new Object); return result!=null ? result.toString() :null;}private String makeJsFuntion(final String functionName,final String... args) {final StringBuffer functionArgs=new StringBuffer(); if(args.length>0) { for(int i=0;i<args.length;i++) { if(i>0) { functionArgs.append(","); } functionArgs.append(String.format("'%1$s'", args)); } }return String.format("return document.%1$s.%2$s(%3$s);", flashObjectId, functionName,functionArgs); }}
Krok 2:
package com.java.selenium;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;public class FlashTesting { public static void main(String args) throws InterruptedException {WebDriver driver;System.setProperty("webdriver.gecko.driver", "C:\drivers\geckodriver.exe");driver = new FirefoxDriver();driver.get("http://www.permadi.com/tutorial/flashjscommand/");driver.manage().window().maximize();FlashWebDriver flashApp = new FlashWebDriver(driver, "myFlashMovie");flashApp.callFlashObject("Play"); // first numberThread.sleep(3000L);flashApp.callFlashObject("StopPlay"); // operationThread.sleep(3000L);flashApp.callFlashObject("Rewind"); System.out.println(flashApp.callFlashObject("GetVariable","/:message"));flashApp.callFlashObject("SetVariable","/:message","Learn Flash testing with Webdriver");System.out.println(flashApp.callFlashObject("GetVariable","/:message")); }}
Krok 2: Spusťte výše uvedený skript.
výstup: jakmile provedeme výše uvedený skript, video se začne přehrávat, zastavit a převinout video zpět.
výzvy v testování Flash
- Chcete-li automatizovat aplikaci flash, můžete použít FlexMonkium, což je doplněk pro selen IDE.
- pomocí integrace Selenium-Flexmonkium můžete čelit problému s povolením nahrávání / přehrávání Flex aplikací. K překonání problému musí uživatel velmi pečlivě nainstalovat a integrovat Flexmonkium do selenium IDE. Správná instalace umožní záznamu automatizovat aplikace flash.
závěr:
- při testování Flash je třeba zkontrolovat konkrétní animační Videa, filmy, hry atd. jak pracuje podle očekávání nebo ne
- rozdíl mezi flash a jiným prvkem je, že Flash je vložen do souborů SWF, zatímco ostatní prvky jsou vloženy do souborů HTML
- k nalezení objektu flash, který používáte atributy, jako je ID objektu. A proto můžete provádět operace jako play, stop, mute, resume atd.
- testovací nástroje potřebné při testování bleskem.
- selen
- TestComplete
- soap UI
- testovací Studio atd.
- pro přehrávání aplikací Flash potřebujeme následující pluginy, které jsou uvedeny následovně:
- OpenFL
- Adobe Air
- Flash Player
- Gnash