Test flash con Selenium webdriver
โก Riepilogo intelligente
Test flash con Selenium WebDriver verifica che i video, i giochi e le animazioni basati su Flash funzionino correttamente. Questa risorsa spiega come acquisire oggetti SWF incorporati, assegnare ID oggetto e automatizzare la riproduzione utilizzando Selenium Registrazione IDE e classe FlashObjectWebDriver per una convalida affidabile.

Che cos'รจ il test Flash?
Il test di Flash รจ un tipo di test utilizzato per verificare che video, giochi, film, ecc. basati su Flash funzionino come previsto. In altre parole, il test della funzionalitร di Flash รจ noto come Test flash. Flash รจ un software popolare sviluppato da Macromedia (ora acquisita da Adobe). Viene utilizzato per sviluppare giochi, applicazioni, animazioni basate sulla grafica, film, Mobile giochi, programmi, ecc.
In Selenium Automazione, se gli elementi non vengono trovati dai localizzatori generali come ID, classe, nome, ecc, poi XPath รจ necessario trovare un elemento sulla pagina web per eseguire un'operazione su quell'elemento particolare. Ma nei test Flash, XPath Impossibile accedere a un oggetto Flash. Pertanto, รจ necessario un oggetto Flashwebdriver per trovare un oggetto Flash in qualsiasi applicazione.
Qui vedrai come eseguire flash Collaudo e come eseguire i test flash con Selenium.
Prerequisito per il test Flash
Prima di iniziare, ecco i requisiti necessari per testare un'applicazione Flash:
- Applicazione Flash.
- Browser web supportati.
- Plugin di Adobe Flash Player.
Utensili- Di seguito sono riportati gli strumenti di test utili nei test flash.
- Selenium
- Interfaccia utente del sapone
- TestComplete
- Studio di prova ecc.
Selenium รจ uno strumento molto popolare per il test di applicazioni web. Permette di creare framework per diverse piattaforme e in diversi linguaggi di programmazione. ร uno strumento open source e puรฒ essere scaricato dal sito web ufficiale. ร facile da configurare, utilizzare e implementare.
In che modo il test Flash si differenzia dagli altri elementi?
Ora che i prerequisiti sono pronti, รจ utile capire perchรฉ Flash si comporta in modo diverso dagli elementi HTML standard durante la fase di test.
- Perchรฉ รจ difficile catturare oggetti con il flash? Come si risolve questo problema?
Flash รจ una tecnologia obsoleta. ร difficile acquisire un oggetto Flash perchรฉ รจ diverso dall'HTML. Inoltre, Flash รจ un file SWF (Small Web Format) incorporato. ร anche difficile accedere a un oggetto Flash su un dispositivo mobile.
Sviluppareping Flash รจ piรน difficile dello sviluppoping Una pagina HTML presenta problemi dal punto di vista della SEO (ottimizzazione per i motori di ricerca) perchรฉ Flash non รจ completamente leggibile dai motori di ricerca. Tuttavia, tecnologie avanzate come HTML5 sono state introdotte per superare problemi come le prestazioni e la sicurezza.
- In che modo viene testata un'applicazione Flash?
Le applicazioni Flash vengono testate in due modi:
- Manuale - ร possibile testare l'oggetto Flash eseguendo manualmente i casi di test poichรฉ รจ semplice e facile da testare. Dopo la correzione del bug, ti assicuri che Flash funzioni correttamente come previsto e fornisci l'approvazione.
- Automazione - Scrivi uno script utilizzando qualsiasi strumento di automazione come Selenium, SoapUI, TestComplete, ecc. ed eseguire lo script.
- Differenza tra Flash e altri elementi.
Come accennato in precedenza, la principale differenza tra Flash e gli altri elementi รจ che Flash รจ incorporato nei file SWF, mentre gli altri elementi sono incorporati nei file HTML. Ecco perchรฉ l'HTML รจ piรน facile da acquisire rispetto a Flash.
Come si ottiene l'ID oggetto Flash di un filmato Flash / di un'app Flash?
Una volta comprese le differenze tra Flash e HTML, il passo successivo consiste nell'individuare l'oggetto Flash stesso tramite il suo ID oggetto.
In qualsiasi pagina web, il tag <object> viene utilizzato per qualsiasi elemento multimediale incorporato (come Flash, ActiveX, video, ecc.). Implica l'"incorporamento" all'interno di un documento HTML. Questo tag definisce un contenitore incorporato nei tag <object/> o <embed/> in un documento HTML per contenuti interattivi o un'applicazione esterna. Il nome dell'oggetto viene utilizzato per individuare l'oggetto Flash nelle pagine web.
Ad esempio, nell'esempio seguente si puรฒ notare che il filmato Flash รจ definito in un tag "embed" all'interno di un documento o file HTML.
Esempio:
/* 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>
Utilizzo dell'ID oggetto per individuare gli elementi Flash.
ร possibile utilizzare attributi flash come ID oggetto per individuare l'oggetto flash. E in questo modo puoi eseguire le operazioni su di esso come richiesto come riproduci, ferma, ecc.
Come giร accennato, non รจ possibile accedere agli oggetti Flash tramite XPath. Pertanto, per poter eseguire qualsiasi operazione su questi oggetti, lo sviluppatore deve assegnare un ID oggetto appropriato.
La schermata seguente mostra l'ID oggetto "MyFlashMovie" assegnato al Flash:
Come automatizzare Flash utilizzando Selenium Registrazione dell'IDE
Con l'ID oggetto assegnato, รจ possibile registrare le interazioni sul filmato Flash direttamente tramite Selenium SDI.
Puoi anche automatizzare il flash usando Selenium SDI.
Passo 1) Devi aprire l'applicazione flash e poi Selenium IDE come mostrato nella schermata seguente:
Passo 2) Ora clicca sul pulsante rosso "registra" a destra e inizia a lavorare sul filmato Flash; troverai quindi la registrazione come mostrato di seguito:
Dopo la registrazione, se l'utente desidera eseguire lo script, puรฒ fare clic sul "pulsante di esecuzione verde" come mostrato nella schermata sottostante. Selenium L'IDE eseguirร lo script passo dopo passo.
Come automatizzare Flash utilizzando Selenium Webdriver
Per un controllo maggiore rispetto a quello offerto dalla registrazione, Selenium WebDriver consente di controllare l'oggetto Flash a livello di programmazione.
Puoi anche automatizzare il flash usando Selenium driver web tramite l'oggetto Flashwebdriver e quindi chiama un metodo per operare sull'oggetto flash. Devi scarica i file jar di flashwebdriver:
Passo 1) Dopo aver scaricato il file, aggiungilo al tuo progetto come mostrato nella schermata sottostante.
Passo 2) All'interno del file JAR di Flash รจ presente una classe separata denominata flashobjectwebdriver. Implementa il flashWebdriver "myFlashmovie" nel tuo script Selenium come mostrato nella schermata seguente.
Dopo aver aggiunto la classe del driver web "MyFlashMovie", รจ possibile accedere all'oggetto Flash.
Quando automatizzare il test flash
Solitamente, รจ necessario automatizzare i test Flash quando l'oggetto Flash non รจ facilmente accessibile. Ciรฒ comporta l'interruzione del test e, di conseguenza, il fallimento del test dell'oggetto Flash.
Creazione di uno script Selenium per il test di Flash
Mettendo insieme i passaggi precedenti, ecco uno script funzionante completo che avvia e controlla il Guru99 filmati dimostrativi in โโFlash.
Passo 1) Si utilizza il โGuruFilmato Flash da 99 secondi per testare lo scenario Flash.
https://demo.guru99.com/test/flash-testing.html
Passo 2) Scrivi una sceneggiatura Selenium Apri Eclipse ed esegui il codice. Il codice seguente, una volta eseguito, svolgerร le seguenti operazioni:
- Aprire il Firefox del browser,
- Avvia il sito flash guru99,
- Riproduci il filmato flash e
- Quindi interrompi il 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")); } }
Passo 3) Eseguire lo script sopra riportato.
Produzione: All'esecuzione dello script sopra riportato, il filmato flash inizia a essere riprodotto e si arresta, ecc.
Sfide nei test Flash
- Automatizzare un'app Flash รจ una sfida. Per automatizzare un'app Flash, puoi usare FlexMonkium, che รจ un componente aggiuntivo per Selenium SDI.
- Potresti riscontrare problemi nell'abilitare la registrazione/riproduzione delle app Flex utilizzando Selenium-Integrazione Flexmonkium. La soluzione รจ che l'utente deve installare e integrare Flexmonkium con Selenium Utilizzare l'IDE con attenzione. Una corretta installazione consentirร la registrazione per automatizzare le applicazioni Flash.








