Flash-Test mit Selenium WebTreiber
Was ist Flash-Testen?
Beim Flash-Test handelt es sich um einen Testtyp, mit dem überprüft wird, ob Flash-basierte Videos, Spiele, Filme usw. wie erwartet funktionieren. Mit anderen Worten nennt man das Testen der Funktionalität des Blitzes Flash-Tests. Flash ist eine sehr beliebte Software, die von Mircomedia (jetzt von Adobe übernommen) entwickelt wurde. Es wird zur Entwicklung von Spielen, Anwendungen, grafikbasierten Animationen, Filmen usw. verwendet. Mobil Spiele, Programme usw. In
In Selenium Automatisierung, wenn die Elemente von den allgemeinen Locators nicht gefunden werden wie ID, Klasse, Name usw. dann XPath ist erforderlich, um ein Element auf der Webseite zu finden, um eine Operation an diesem bestimmten Element durchzuführen. Aber beim Flash-Testen XPath Der Zugriff auf das Flash-Objekt schlägt fehl. Daher ist ein Flashwebdriver-Objekt erforderlich, um ein Flash-Objekt in jeder Anwendung zu finden.
Hier erfahren Sie, wie Sie Flash ausführen Testen und wie man Flash-Tests damit durchführt Selenium.
Voraussetzung für Flash-Tests
Nachfolgend finden Sie die Voraussetzungen zum Testen der Flash-Anwendung
- Flash-Anwendung.
- Unterstützt Webbrowser.
- Adobe Flash Player-Plugins.
Werkzeuge-Nachfolgend finden Sie die Testtools, die beim Flash-Testen nützlich sind.
- Selenium
- Soap-Benutzeroberfläche
- Testvervollständigen
- Teststudio usw.
Selenium ist ein sehr beliebtes Tool für Webtests. Sie können Frameworks auf verschiedenen Plattformen und in einer anderen Sprache erstellen. Es ist ein Open-Source-Tool und kann von der offiziellen Website heruntergeladen werden. Es ist einfach zu konfigurieren, zu verwenden und zu implementieren.
Wie sich Flash-Tests von anderen Elementen unterscheiden
- Warum ist die Aufnahme von Blitzobjekten schwierig? Wie wird es gelöst?
Flash ist eine veraltete Technologie. Es ist schwierig, ein Flash-Objekt zu erfassen, da es sich von HTML unterscheidet. Außerdem ist Flash eine eingebettete SWF-Datei (Small Web Format). Außerdem ist es schwierig, auf Flash-Objekte auf einem mobilen Gerät zuzugreifen.
Die Entwicklung von Flash ist aus SEO-Sicht (Suchmaschinenoptimierung) schwieriger als die Entwicklung von HTML-Seiten, da Flash von Suchmaschinen nicht vollständig gelesen werden kann. Um Probleme wie Leistung und Sicherheit zu überwinden, werden jedoch fortschrittliche Technologien wie HTML 5 eingeführt.
- Auf welche Weise wird die Flash-Anwendung getestet?
Flash-Anwendungen werden auf zwei Arten getestet:
- Handbuch - Sie können das Flash-Objekt testen, indem Sie Testfälle manuell ausführen, da es einfach und leicht zu testen ist. Nach der Fehlerbehebung stellen Sie sicher, dass Flash wie erwartet ordnungsgemäß funktioniert, und geben die Freigabe ab.
- Automatisierung - Sie verwenden zum Schreiben eines Skripts ein beliebiges Automatisierungstool wie Selenium, SoapUI, TestComplete usw. und führen Sie das Skript aus.
- Unterschied zwischen dem Flash und anderen Elementen.
Wie oben erwähnt besteht der Hauptunterschied zwischen Flash und anderen Elementen darin, dass Flash in SWF-Dateien eingebettet ist, während andere Elemente in HTML-Dateien eingebettet sind. Deshalb ist HTML im Vergleich zu Flash einfacher zu erfassen.
Wie können Sie die Flash-Objekt-ID eines Flash-Films/einer Flash-App erhalten?
Auf allen Webseiten wird das <object>-Tag für alle eingebetteten Multimediainhalte (wie Flash, ActiveX, Video usw.) verwendet. Es bedeutet „Einbetten“ in ein HTML-Dokument. Dieses Tag definiert einen Container, der in < object />- oder < embed />-Tags in einem HTML eingebettet ist, für interaktive Inhalte oder externe Anwendungen. Der Objektname wird zum Auffinden von Flash-Objekten auf Webseiten verwendet.
Im folgenden Beispiel können Sie beispielsweise sehen, dass der Flash-Film in einem „Embed“-Tag in einem HTML-Dokument oder einer HTML-Datei definiert ist.
Ejemplo:
/* 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>
Verwenden der Objekt-ID zum Suchen von Flash-Elementen.
Sie können Flash-Attribute wie die Objekt-ID verwenden, um das Flash-Objekt zu lokalisieren. Und dadurch können Sie bei Bedarf Vorgänge wie Abspielen, Stoppen usw. daran ausführen.
Wie bereits erwähnt, kann mit XPath nicht auf Flash-Objekte zugegriffen werden. Um also eine Aktion an diesen Objekten durchführen zu können, muss der Entwickler die entsprechende Objekt-ID zuweisen.
Der folgende Bildschirm zeigt, dass die Objekt-ID „MyFlashMovie“ dem Flash zugewiesen ist:
So automatisieren Sie Flash mit Selenium IDE-Aufzeichnung
Sie können den Blitz auch automatisieren Selenium IDE.
Schritt 1) Sie müssen die Flash-Anwendung öffnen und dann Selenium IDE wie im folgenden Bildschirm gezeigt:
Schritt 2) Klicken Sie nun auf der rechten Seite auf den „roten Aufnahmeknopf“ und beginnen Sie mit der Operation am Flash-Film. Anschließend finden Sie das aufgezeichnete Skript wie unten gezeigt:
Wenn der Benutzer nach der Aufzeichnung das Skript ausführen möchte, kann er auf die „grüne Schaltfläche „Ausführen““ klicken, wie im folgenden Bildschirm gezeigt. Der Selenium Die IDE führt das Skript Schritt für Schritt aus.
So automatisieren Sie Flash mit Selenium Webtreiber.
Sie können den Blitz auch automatisieren Selenium Web-Treiber über das Flashwebdriver-Objekt und rufen Sie dann eine Methode auf, um das Flash-Objekt zu betreiben. Sie müssen Laden Sie die JAR-Dateien des Flashwebdriver herunter:
Schritt 1) Fügen Sie nach dem Herunterladen die JAR-Datei Ihrem Projekt hinzu, wie im folgenden Bildschirm gezeigt.
Schritt 2) Unter der Flash-JAR-Datei gibt es eine separate Flashobjectwebdriver-Klasse. Implementieren Sie den FlashWebdriver „myFlashmovie“ in Ihrem Selenium-Skript, wie unten auf dem Bildschirm gezeigt.
Nachdem Sie die Webtreiberklasse „MyFlashMovie“ hinzugefügt haben, können Sie auf das Flash-Objekt zugreifen.
Wann sollten Flash-Tests automatisiert werden?
Normalerweise müssen Sie Flash-Tests automatisieren, wenn das Flash-Objekt nicht leicht zugänglich ist. Dieses Testergebnis wird abgebrochen und daher kann das Flash-Objekt nicht getestet werden.
Erstellen eines Selenium-Skripts zum Testen von Flash.
Schritt 1) Um das Flash-Szenario zu testen, verwenden Sie den Flash-Film „Guru99“.
https://demo.guru99.com/test/flash-testing.html
Schritt 2) Schreiben Sie ein Skript Selenium Eclipse und führen Sie es aus. Der folgende Code führt bei Ausführung folgende Dinge aus
- Öffnen Sie den Microsoft Store auf Ihrem Windows-PC. Firefox Browser,
- Starten Sie die guru99-Flash-Site.
- Spielen Sie den Flash-Film ab und
- Dann stoppen Sie den 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")); } }
Schritt 3) : Führen Sie das obige Skript aus.
Ausgang: Bei Ausführung des obigen Skripts beginnt die Wiedergabe des Flash-Films, stoppt usw.
Herausforderungen beim Flash-Testen
- Die Automatisierung einer Flash-App ist eine Herausforderung. Um die Flash-App zu automatisieren, können Sie FlexMonkium verwenden, ein Add-on für Selenium IDE.
- Möglicherweise treten Probleme beim Aktivieren der Aufnahme/Wiedergabe von Flex-Apps auf Selenium-Flexmonkium-Integration. Die Lösung besteht darin, dass der Benutzer Flexmonkium sorgfältig in Selenium IDE installieren und integrieren muss. Eine ordnungsgemäße Installation ermöglicht die Automatisierung von Flash-Apps.
Zusammenfassung
- Beim Flash-Testen müssen Sie überprüfen, ob Flash-Videos, Spiele, Filme usw. wie erwartet funktionieren oder nicht.
- Sie verwenden Flash-Attribute wie die Objekt-ID, um das Flash-Objekt zu lokalisieren. Und dadurch können Sie bei Bedarf Vorgänge wie Abspielen, Stoppen usw. daran ausführen.
- Der Hauptunterschied zwischen Flash und anderen Elementen besteht darin, dass Flash in SWF-Dateien eingebettet ist, während andere Elemente in HTML-Dateien eingebettet sind
- Sie müssen den Flash-Test normal automatisieren, wenn das Flash-Objekt nicht leicht zugänglich ist.
- Nützliche Tools für Flash-Tests sind
- Selenium
- Soap-Benutzeroberfläche
- Testvervollständigen
- Teststudio usw.
- Die Automatisierung einer Flash-App ist eine Herausforderung. Um die Flash-App zu automatisieren, können Sie FlexMonkium verwenden, ein Add-on für Selenium IDE.