Flash-Test mit Selenium WebTreiber
โก Intelligente Zusammenfassung
Flash-Test mit Selenium WebDriver รผberprรผft die korrekte Funktion von Flash-basierten Videos, Spielen und Animationen. Diese Ressource erklรคrt das Erfassen eingebetteter SWF-Objekte, das Zuweisen von Objekt-IDs und die Automatisierung der Wiedergabe mithilfe von WebDriver. Selenium IDE-Aufzeichnung und die FlashObjectWebDriver-Klasse fรผr zuverlรคssige Validierung.
Was ist Flash-Testen?
Flash-Testing ist eine Testart, mit der รผberprรผft wird, ob Flash-basierte Videos, Spiele, Filme usw. wie erwartet funktionieren. Anders ausgedrรผckt: Das Testen der Flash-Funktionalitรคt wird als Flash-Testing bezeichnet. Flash-Tests. Flash ist eine beliebte Software, die von Macromedia (jetzt Teil von Adobe) entwickelt wurde. Sie wird zur Entwicklung von Spielen, Anwendungen, grafikbasierten Animationen und Filmen verwendet. Mobil Spiele, Programme usw.
In Selenium Automatisierung, wenn die Elemente von den allgemeinen Locators nicht gefunden werden wie ID, Klasse, Name usw und dann XPath Um ein Element auf der Webseite zu finden und eine Operation an diesem Element durchzufรผhren, ist Folgendes erforderlich: Beim Flash-Testing XPath Der Zugriff auf ein Flash-Objekt schlรคgt fehl. Daher ist ein FlashWebDriver-Objekt erforderlich, um in einer Anwendung ein Flash-Objekt zu finden.
Hier erfahren Sie, wie Sie Flash ausfรผhren Tests und wie man Flash-Tests damit durchfรผhrt Selenium.
Voraussetzung fรผr Flash-Tests
Bevor Sie beginnen, beachten Sie bitte die folgenden Voraussetzungen fรผr das Testen einer Flash-Anwendung:
- Flash-Anwendung.
- Unterstรผtzte Webbrowser.
- Adobe Flash Player-Plugins.
Werkzeuge- Nachfolgend finden Sie die Testtools, die beim Flash-Testen nรผtzlich sind.
- Selenium
- Soap-Benutzeroberflรคche
- TestComplete
- Teststudio usw.
Selenium ist ein sehr beliebtes Tool fรผr Webtests. Es ermรถglicht die Erstellung von Frameworks fรผr verschiedene Plattformen und Programmiersprachen. Das Open-Source-Tool kann von der offiziellen Website heruntergeladen werden. Es ist einfach zu konfigurieren, zu verwenden und zu implementieren.
Wie sich Flash-Testing von anderen Elementen unterscheidet
Nachdem die Voraussetzungen nun erfรผllt sind, hilft es, zu verstehen, warum sich Flash beim Testen anders verhรคlt als Standard-HTML-Elemente.
- Warum ist das Fotografieren von Objekten mit Blitzlicht so schwierig? Wie lรคsst sich das Problem lรถsen?
Flash ist eine veraltete Technologie. Es ist schwierig, ein Flash-Objekt zu erfassen, da es sich von HTML unterscheidet. Flash ist zudem eine eingebettete SWF-Datei (Small Web Format). Auch der Zugriff auf ein Flash-Objekt auf einem Mobilgerรคt ist schwierig.
Entwickelnping Flash ist schwieriger als die Entwicklungping Aus SEO-Sicht (Suchmaschinenoptimierung) ist eine HTML-Seite problematisch, da Flash von Suchmaschinen nicht vollstรคndig gelesen werden kann. Um Probleme wie Performance und Sicherheit zu beheben, wurden jedoch fortschrittliche Technologien wie HTML5 eingefรผhrt.
- Auf welche Weise wird eine 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 schreiben ein Skript mit einem beliebigen Automatisierungstool wie Selenium, SoapUI, TestCompleteusw. und fรผhren Sie das Skript aus.
- Unterschied zwischen Flash und anderen Elementen.
Wie bereits 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. Daher lรคsst sich HTML im Vergleich zu Flash leichter erfassen.
Wie kann man die Flash-Objekt-ID eines Flash-Films/einer Flash-App ermitteln?
Sobald Sie wissen, wie sich Flash von HTML unterscheidet, besteht der nรคchste Schritt darin, das Flash-Objekt selbst รผber seine Objekt-ID zu lokalisieren.
Auf jeder Webseite wird das `<object>`-Tag fรผr eingebettete Multimedia-Inhalte (wie Flash, ActiveX, Video usw.) verwendet. Es bedeutet โeinbettenโ innerhalb eines HTML-Dokuments. Dieses Tag definiert einen Container, der in `<object />`- oder `<embed />`-Tags eines HTML-Dokuments fรผr interaktive Inhalte oder externe Anwendungen eingebettet ist. Der Objektname dient dazu, das Flash-Objekt auf Webseiten zu finden.
Im folgenden Beispiel sehen Sie beispielsweise, dass der Flash-Film in einem โembedโ-Tag in einem HTML-Dokument oder einer 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>
Mithilfe der Objekt-ID kรถnnen Flash-Elemente gefunden werden.
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 auf Flash-Objekte nicht รผber XPath zugegriffen werden. Um also Aktionen an diesen Objekten durchzufรผhren, muss der Entwickler ihnen eine entsprechende Objekt-ID zuweisen.
Der folgende Bildschirm zeigt, dass die Objekt-ID โMyFlashMovieโ fรผr Flash zugewiesen wurde:
So automatisieren Sie Flash mit Selenium IDE-Aufzeichnung
Nachdem die Objekt-ID zugewiesen wurde, kรถnnen Sie Interaktionen im Flash-Film direkt aufzeichnen รผber Selenium IDE.
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 dargestellt:
Schritt 2) Klicken Sie nun auf den โroten Aufnahmeknopfโ auf der rechten Seite und beginnen Sie mit der Bearbeitung des Flash-Films. Anschlieรend finden Sie das aufgezeichnete Skript wie unten dargestellt:
Nach der Aufzeichnung kann der Benutzer, falls er das Skript ausfรผhren mรถchte, auf die โgrรผne Schaltflรคche โAusfรผhrenโโ klicken, wie im folgenden Bildschirm dargestellt. Selenium Die IDE fรผhrt das Skript Schritt fรผr Schritt aus.
So automatisieren Sie Flash mit Selenium Webtreiber
Fรผr mehr Kontrolle als die Aufnahmefunktionen bieten, Selenium Mit WebDriver kรถnnen Sie das Flash-Objekt programmatisch steuern.
Sie kรถnnen den Blitz auch automatisieren Selenium Sie mรผssen den Webdriver รผber das FlashWebDriver-Objekt verwenden und dann eine Methode aufrufen, um auf dem Flash-Objekt zu operieren. Laden Sie die JAR-Dateien des Flashwebdriver herunter:
Schritt 1) Nach dem Herunterladen fรผgen Sie die JAR-Datei wie im folgenden Screenshot gezeigt in Ihr Projekt ein.
Schritt 2) Unter der Flash-JAR-Datei befindet sich eine separate Klasse namens `flashobjectwebdriver`. Implementieren Sie den FlashWebdriver โmyFlashmovieโ in Ihrem Selenium-Skript, wie unten im Screenshot gezeigt.
Nach dem Hinzufรผgen der Webdriver-Klasse โMyFlashMovieโ kรถnnen Sie auf das Flash-Objekt zugreifen.
Wann sollten Flash-Tests automatisiert werden?
Normalerweise muss das Flash-Testing automatisiert werden, wenn das Flash-Objekt nicht ohne Weiteres zugรคnglich ist. Dies fรผhrt dazu, dass der Test abgebrochen wird und somit das Flash-Objekt nicht getestet werden kann.
Erstellung eines Selenium-Skripts fรผr Flash-Tests
Nachdem die vorherigen Schritte zusammengefasst wurden, folgt hier ein vollstรคndiges, lauffรคhiges Skript, das den Prozess startet und steuert. Guru99 Demo-Flash-Film.
Schritt 1) Sie verwenden das โGuru99-Zoll-Blitzfilm zum Testen des Blitzszenarios.
https://demo.guru99.com/test/flash-testing.html
Schritt 2) Schreiben Sie ein Skript Selenium Eclipse รถffnen und ausfรผhren. Der folgende Code bewirkt bei der Ausfรผhrung Folgendes:
- ร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 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")); } }
Schritt 3) Fรผhren Sie das obige Skript aus.
Ausgang: Bei Ausfรผhrung des obigen Skripts wird der Flash-Film abgespielt und gestoppt usw.
Herausforderungen beim Flash-Testen
- Die Automatisierung einer Flash-Anwendung ist eine Herausforderung. Um eine Flash-Anwendung zu automatisieren, kรถnnen Sie FlexMonkium verwenden, ein Add-on fรผr Selenium IDE.
- Mรถglicherweise treten Probleme beim Aktivieren der Aufnahme-/Wiedergabefunktion von Flex-Apps auf. Selenium-Flexmonkium-Integration. Die Lรถsung besteht darin, dass der Benutzer Flexmonkium installieren und integrieren muss. Selenium Die IDE sollte sorgfรคltig installiert werden. Eine korrekte Installation ermรถglicht die Aufzeichnung zur Automatisierung von Flash-Anwendungen.









