Test Flash avec Selenium pilote web
Qu’est-ce que le test Flash ?
Le test Flash est un type de test utilisé pour vérifier que les vidéos, les jeux, les films, etc. basés sur Flash fonctionnent comme prévu. En d’autres termes, tester la fonctionnalité du flash s’appelle Tests flash. Flash est un logiciel très populaire développé par Mircomedia (maintenant acquis par Adobe). Il est utilisé pour développer des jeux, des applications, des animations graphiques, des films, Mobile jeux, programmes, etc. Dans
In Selenium Automatisation, si les éléments ne sont pas trouvés par les localisateurs généraux comme l'identifiant, la classe, le nom, etc.. alors XPath est nécessaire pour trouver un élément sur la page Web pour effectuer une opération sur cet élément particulier. Mais lors des tests Flash, XPath ne parvient pas à accéder à l'objet Flash. L'objet Flashwebdriver est donc requis pour trouver un objet flash dans n'importe quelle application.
Ici vous verrez comment exécuter Flash USP,EP, BP et comment faire des tests flash avec Selenium.
Pré-requis pour les tests Flash
Vous trouverez ci-dessous les conditions requises pour tester l'application Flash
- Application Flash.
- Navigateur Web pris en charge.
- Plugins du lecteur Adobe Flash.
Outils-Vous trouverez ci-dessous les outils de test utiles pour les tests flash.
- Selenium
- Interface utilisateur du savon
- TestComplete
- Studio d'essais, etc.
Selenium est un outil très populaire pour les tests Web. Vous pouvez créer un cadre sur différentes plateformes et dans un langage différent. C'est un outil open source et peut être téléchargé depuis le site officiel. Il est facile à configurer, à utiliser et à mettre en œuvre.
En quoi les tests Flash sont différents des autres éléments
- Pourquoi la capture d'objets flash est-elle difficile ? Comment est-ce résolu ?
Flash est une technologie obsolète. Il est difficile de capturer un objet Flash car il est différent du HTML. De plus, Flash est un fichier SWF (Small Web Format) intégré. Il est également difficile d'accéder aux objets Flash sur un appareil mobile.
Développer Flash est plus difficile que développer une page HTML dans une perspective SEO (Search Engine Optimization) car Flash n'est pas entièrement lisible par le moteur de recherche. Cependant, des technologies avancées comme HTML 5 sont introduites pour surmonter des problèmes tels que les performances et la sécurité.
- De quelles manières l'application Flash est-elle testée.
Les applications Flash sont testées de deux manières :
- Manuel - Vous pouvez tester l'objet Flash en exécutant des cas de test manuellement car il est simple et facile à tester. Après la correction du bug, vous vous assurez que Flash fonctionne correctement comme prévu et vous vous déconnectez.
- Automatisation - Vous avez l'habitude d'écrire un script à l'aide de n'importe quel outil d'automatisation comme Selenium, SoapUI, TestComplete, etc. et exécutez le script.
- Différence entre le Flash et un autre élément.
Comme mentionné ci-dessus, la principale différence entre Flash et les autres éléments est que Flash est intégré dans des fichiers SWF, tandis que d'autres éléments sont intégrés dans des fichiers HTML. C'est pourquoi le HTML est plus facile à capturer que le Flash.
Comment pouvez-vous obtenir l'ID d'objet Flash d'un film Flash / d'une application Flash
Dans toutes les pages Web, la balise < object > est utilisée pour tout multimédia intégré (comme Flash, ActiveX, Vidéo, etc.). Cela implique « intégrer » dans un document HTML. Cette balise définit un conteneur intégré dans les balises < object /> ou < embed /> dans un HTML ) pour un contenu interactif ou une application externe. Le nom de l'objet est utilisé pour localiser l'objet Flash sur les pages Web.
Par exemple, dans l'exemple ci-dessous, vous pouvez voir que l'animation Flash est définie dans une balise « embed » dans un document ou un fichier HTML.
Exemple :
/* 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>
Utilisation de l'ID d'objet pour rechercher des éléments Flash.
Vous pouvez utiliser des attributs Flash tels que l'identifiant de l'objet pour localiser l'objet Flash. Et ainsi, vous pouvez effectuer des opérations dessus selon vos besoins, comme lire, arrêter, etc.
Comme déjà évoqué, les objets Flash ne sont pas accessibles à l'aide de XPath. Ainsi, pour effectuer une action sur ces objets, le développeur doit attribuer un ID d'objet approprié.
L'écran ci-dessous montre l'ID d'objet « MyFlashMovie » attribué au Flash :
Comment automatiser Flash en utilisant Selenium Enregistrement IDE
Vous pouvez également automatiser le flash en utilisant Selenium IDE
Étape 1) Vous devez ouvrir l'application Flash, puis Selenium IDE comme indiqué dans l'écran ci-dessous :
Étape 2) Cliquez maintenant sur le « bouton rouge d'enregistrement » sur le côté droit et commencez à effectuer des opérations sur le film Flash. Vous trouverez ensuite le script enregistré comme indiqué ci-dessous :
Après l'enregistrement, si l'utilisateur souhaite exécuter le script, il peut cliquer sur le « bouton vert d'exécution » comme indiqué dans l'écran ci-dessous. Le Selenium IDE exécutera le script étape par étape.
Comment automatiser Flash en utilisant Selenium Pilote Web.
Vous pouvez également automatiser le flash en utilisant Selenium pilote Web via l’objet Flashwebdriver, puis appelez une méthode pour faire fonctionner l’objet Flash. Vous devez télécharger les fichiers jar flashwebdriver:
Étape 1) Après le téléchargement, ajoutez le fichier jar à votre projet comme indiqué dans l'écran ci-dessous.
Étape 2) Sous le fichier flash jar, il existe une classe flashobjectwebdriver distincte. Implémentez le flashWebdriver « myFlashmovie » dans votre script Selenium comme indiqué ci-dessous dans l'écran.
Après avoir ajouté la classe de pilote Web « MyFlashMovie », vous pouvez accéder à l'objet Flash.
Quand automatiser les tests flash
Habituellement, vous devez automatiser les tests Flash lorsque l'objet Flash n'est pas facilement accessible. Ce résultat du test est abandonné et ne parvient donc pas à tester l'objet Flash.
Création d'un script Selenium pour les tests Flash.
Étape 1) Vous utilisez l'animation flash « Guru99 » pour tester le scénario flash.
https://demo.guru99.com/test/flash-testing.html
Étape 2) Écrivez un script dans Selenium éclipsez et exécutez-le. Le code ci-dessous, une fois exécuté, fera les choses suivantes
- Ouvrez le Firefox navigateur,
- Lancez le site flash guru99,
- Jouez l'animation flash et
- Puis arrêtez le 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 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")); } }
Étape 3) : Exécutez le script ci-dessus.
Sortie: Lors de l'exécution du script ci-dessus, l'animation flash commence à jouer et s'arrête, etc.
Défis des tests Flash
- L'automatisation de l'application Flash est un défi. Pour automatiser l'application Flash, vous pouvez utiliser FlexMonkium qui est un module complémentaire pour Selenium IDE
- Vous pourriez rencontrer des problèmes pour activer l'enregistrement/lecture des applications Flex à l'aide de Selenium- Intégration de Flexmonkium. La solution est que l'utilisateur doit installer et intégrer Flex monkium à Selenium IDE avec soin. Une installation correcte permettra d'automatiser les applications Flash.
Résumé
- Lors des tests Flash, vous devez vérifier que la vidéo flash, les jeux, les films, etc. fonctionnent comme prévu ou non.
- Vous utilisez des attributs flash comme l'identifiant de l'objet pour localiser l'objet flash. Et ainsi, vous pouvez effectuer des opérations dessus selon vos besoins, comme lire, arrêter, etc.
- La principale différence entre Flash et les autres éléments est que Flash est intégré dans les fichiers SWF, tandis que les autres éléments sont intégrés dans les fichiers HTML.
- Vous devez automatiser les tests Flash normalement lorsque l'objet Flash n'est pas facilement accessible.
- Les outils utiles dans les tests flash sont
- Selenium
- Interface utilisateur du savon
- TestComplete
- Studio d'essais, etc.
- L'automatisation de l'application Flash est un défi. Pour automatiser l'application Flash, vous pouvez utiliser FlexMonkium qui est un module complémentaire pour Selenium IDE