Test flash con Selenium WebDriver

Che cos’è il test Flash?

Test la funzionalità del flash è chiamata Flash Testing. A volte nella tua applicazione, potresti dover controllare i particolari video di animazione, film, giochi, ecc. come lavorare secondo le aspettative o no. Qui abbiamo bisogno di scrivere lo script per verificare la funzionalità di flash per testare questo tipo di applicazione. Flash è un software sviluppato da Macromedia che è ora acquisita da Adobe. Viene utilizzato per sviluppare videogiochi, film, giochi mobili per iOS e Android, ecc. Per riprodurre le applicazioni Flash abbiamo bisogno di alcuni plugin.

Pre-requisiti per il test Flash con Selenium WebDriver

Dovremmo essere pronti con i seguenti requisiti per testare l’applicazione flash con Selenium WebDriver. Ecco l’elenco dei pre-requisiti:

  • Applicazione Web Flash
  • Plugin Adobe Flash Player
  • Supporto browser nativo

Sotto il software editor richiesto per le applicazioni flash.

  • Adobe Animare
  • Flash Builder
  • Flash Sviluppare
  • Potenza Flasher
  • Scaleform

Per giocare Flash applicazioni di cui abbiamo bisogno i seguenti plug-in che sono elencati come segue:

  • OpenFL
  • Adobe Air
  • Flash Player
  • Gnash

qui di Seguito sono gli strumenti di Test richiesti in flash test.

  • Selenio
  • TestComplete
  • Soap UI
  • Test Studio ecc.

Come testare il contenuto Flash usando il selenio?

In generale, per interagire con il contenuto Flash in Selenium non ha un’interfaccia. In ActionScript, i file Flash sono programmati che sono molto simili a JavaScript. I file Flash contengono anche elementi di programmazione. Ad esempio, anche loro hanno pulsanti, casella di testo, pulsanti di opzione, ecc. Il file Flash deve chiamare alcuni metodi interni per eseguire l’attività. Ad esempio, il contenuto flash di un pulsante può causare la modifica del colore di sfondo del contenuto flash. In soccorso usiamo ActionScript, espone una classe chiamata Interfaccia esterna per gli sviluppatori. Questa classe è più importante se si desidera esporre i metodi interni del file Flash al mondo esterno. Il mondo esterno è il Browser che ospita il contenuto. Quindi, se esponiamo i nostri metodi interni dal file Flash al Browser, possiamo chiamarli direttamente usando JavaScript.

Diversi modi per testare applicazioni Flash

Applicazioni Flash possono essere testati in due modi Manuale & Automazione:

Manuale: È semplice e facile da testare eseguendo i casi di test manualmente per testare l’oggetto Flash.

Automazione: Per eseguire lo script, è necessario scrivere uno script utilizzando strumenti di automazione come TestComplete, Selenium, soapUI e Test Studio.

Differenza tra Flash e altri elementi

Flash è incorporato in file SWF dove altri elementi sono incorporati in file HTML. Quindi, è per questo che rispetto a flash HTML è facile da catturare.

Come si può ottenere un film flash o flash app object ID?

In tutte le pagine Web, il tag < oggetto > definisce un oggetto incorporato con qualsiasi contenuto multimediale come Video, ActiveX, Flash, applet Java, ActiveX, PDF, ecc. nelle tue pagine web. Indica “incorpora” all’interno di un documento HTML. Questo tag descrive un contenitore incorporato in< object /> o< embed / > tag in un HTML per contenuti interattivi o applicazioni esterne. Per individuare l’oggetto flash sulle pagine Web viene utilizzato il nome dell’oggetto. È inoltre possibile utilizzare il tag< object > per incorporare un’altra pagina Web nel documento HTML.

Ad esempio, il filmato flash è definito in un tag “incorpora” in un documento o file HTML.

Esempio:

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

Come eseguire test Flash utilizzando Selenium Webdriver?

Per importare la libreria Flash, è necessario scaricare il file Flash Selenium jar. È possibile scaricare il Flash.file jar per Selenium WebDriver attraverso il link https://drive.google.com/drive/folders/0B5v_nInLNoquN3hRbmJFYXpCb28. Una volta completato il download, è necessario aggiungere il file jar al progetto.

Una volta completati tutti i pre-requisiti richiesti, è necessario chiamare la classe FlashObjectWebDriver. Questa classe viene utilizzata per eseguire le azioni sui lettori Flash.

Sintassi:

FlashObjectWebDriver flash = new FlashObjectWebDriver(webDriver, " flash object");

Applicazione Flash può essere testato in due modi:

  • Lo sviluppatore fornirà metodi flash per il test, ignorandoli tramite codice JavaScript.
  • I tester indipendenti non hanno accesso al codice sorgente fornito dagli sviluppatori, quindi i tester utilizzano uno strumento basato su immagini chiamato Sikuli, che utilizza le immagini per eseguire azioni dell’utente.

Creazione di script selenium per il test Flash.

Sotto esempio, il programma agisce come un lettore video

Ci sono alcuni metodi predefiniti disponibili per testare le applicazioni flash di youtube.

  1. playVideo
  2. pauseVideo
  3. mute
  4. setVolume
  5. seekTo

Esempio:

Step1: Scrivere uno script Selenium in eclipse ed eseguirlo. Il codice seguente eseguirà le seguenti cose quando eseguiamo lo script.

  1. Avvia il browser Chrome
  2. Avvia il sito
  3. Riproduci il video
  4. Interrompi il video
  5. Riavvolgi il video

Se gli sviluppatori forniscono alcuni metodi flash, l’esempio seguente mostra l’applicazione di esempio conforme ai metodi flash.Fase 1:

Creare classe FlashWebDriver ed eseguire azioni utente sull’applicazione flash utilizzando JavaScript internamente.

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); }}

Passo 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")); }}

Passo 2: Eseguire lo script di cui sopra.

Output: Una volta eseguito lo script di cui sopra il video inizia a giocare, fermarsi, e, riavvolgere il video.

Sfide nei test Flash

  • Per automatizzare l’applicazione flash, è possibile utilizzare FlexMonkium che è un add-on per Selenium IDE.
  • Usando l’integrazione Selenium-Flexmonkium potresti dover affrontare un problema per abilitare le app Flex di registrazione / riproduzione. Per superare il problema, l’utente deve installare e integrare Flexmonkium in selenium IDE con molta attenzione. L’installazione corretta consentirà al record di automatizzare le app flash.

Conclusione:

  • Nei test Flash, è necessario controllare i particolari video di animazione, film, giochi, ecc. funzionando come previsto o meno
  • La differenza tra flash e altri elementi è che Flash è incorporato nei file SWF, mentre altri elementi sono incorporati nei file HTML
  • Per individuare l’oggetto flash si utilizzano attributi come object id. E quindi è possibile eseguire operazioni come play, stop, mute, resume, ecc.
  • Strumenti di test richiesti nei test flash.
  1. Selenio
  2. TestComplete
  3. Soap UI
  4. Test Studio ecc.
  • Per riprodurre le applicazioni Flash abbiamo bisogno dei seguenti plugin che sono elencati come segue:
  1. Per maggiori informazioni, consulta la nostra informativa sulla privacy.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.