Wat is Flash-testen?
Flash-testen is een testtype dat wordt gebruikt om te controleren of de op flash gebaseerde video, games, films, enz. Werken zoals verwacht. Met andere woorden, het testen van de functionaliteit van de flitser staat bekend als Flash Testing. Flash is een zeer populaire software die is ontwikkeld door Mircomedia (nu overgenomen door Adobe). Het wordt gebruikt om games, applicaties, grafische animaties, films, mobiele games, programma's, enz. Te ontwikkelen
In Selenium Automation, als de elementen niet worden gevonden door de algemene locators zoals id, klasse, naam, enz . dan is XPath vereist om een element op de webpagina te vinden om een bewerking op dat specifieke element uit te voeren. Maar bij Flash-tests krijgt XPath geen toegang tot het flash-object. Het Flashwebdriver-object is dus vereist om het Flash-object in elke toepassing te vinden.
Hier ziet u hoe u flash-testen uitvoert en hoe u flash-testen uitvoert met Selenium.
In deze tutorial leer je-
- Wat is Flash-testen?
- Hoe Flash-testen verschilt van andere elementen
- Hoe kunt u de flash-object-ID van de flash-film / flash-app krijgen
- Hoe Flash te automatiseren met Selenium IDE-opname
- Hoe u Flash kunt automatiseren met Selenium Webdriver.
- Seleniumscript maken voor Flash-testen.
Voorwaarde voor Flash-testen
Hieronder staan de vereisten om de flash-applicatie te testen
- Flash-applicatie.
- Ondersteuning webbrowser.
- Adobe Flash Player-plug-ins.
Tools - Hieronder staan de testtools die handig zijn bij flash-testen.
- Selenium
- Soap UI
- TestComplete
- Test Studio enz.
Selenium is een erg populaire tool voor webtesten. U kunt een raamwerk creëren op verschillende platforms en in een andere taal. Het is een open source-tool en kan worden gedownload vanaf de officiële website. Het is gemakkelijk te configureren, te gebruiken en te implementeren.
Hoe Flash-testen verschilt van andere elementen
- Waarom is het vastleggen van flitsobjecten moeilijk? Hoe wordt het opgelost?
Flash is een verouderde technologie. Het is moeilijk om een Flash-object vast te leggen omdat het verschilt van HTML. Flash is ook een ingebed SWF-bestand (Small Web Format). Het is ook moeilijk om toegang te krijgen tot Flash-objecten op een mobiel apparaat.
Het ontwikkelen van flash is moeilijker dan het ontwikkelen van een HTML-pagina met het SEO-perspectief (Search Engine Optimization), omdat flash niet volledig leesbaar is voor de zoekmachine. Er worden echter geavanceerde technologieën zoals HTML 5 geïntroduceerd om de problemen zoals prestaties en beveiliging te overwinnen.
- Op welke manieren wordt de flash-applicatie getest.
Flash-applicaties worden op twee manieren getest:
- Handmatig - U kunt het Flash-object testen door handmatig testgevallen uit te voeren, aangezien het eenvoudig en gemakkelijk te testen is. Na het oplossen van de bug, zorgt u ervoor dat de flitser correct werkt zoals verwacht en zorgt u voor afmelding.
- Automatisering - U gebruikt om een script te schrijven met behulp van een automatiseringstool zoals Selenium, SoapUI, TestComplete, enz. En voert het script uit.
- Verschil tussen de flitser en een ander element.
Zoals hierboven vermeld, is het belangrijkste verschil tussen flash en andere elementen dat Flash is ingesloten in SWF-bestanden, terwijl andere elementen zijn ingesloten in HTML-bestanden. Daarom is HTML gemakkelijk vast te leggen in vergelijking met Flash.
Hoe kunt u de flash-object-ID van de flash-film / flash-app krijgen
Op elke webpagina wordt de tag
In het onderstaande voorbeeld kunt u bijvoorbeeld zien dat de flash-film is gedefinieerd in een "embed" -tag in een HTML-document of bestand.
Voorbeeld:
/ * Html-pagina * /
Object-ID gebruiken om Flash-elementen te vinden.
U kunt flash-attributen zoals object-id gebruiken om het flash-object te lokaliseren. En daardoor kunt u er naar wens bewerkingen op uitvoeren, zoals afspelen, stoppen, enz.
Zoals reeds besproken, zijn Flash-objecten niet toegankelijk met XPath. Dus om enige actie op deze objecten uit te voeren, moet de ontwikkelaar de juiste object-ID toewijzen.
Onderstaand scherm toont het object-ID dat "MyFlashMovie" is toegewezen aan de Flash:
Hoe Flash te automatiseren met Selenium IDE-opname
U kunt de flits ook automatiseren met Selenium IDE.
Stap 1) U moet de flash-applicatie openen en vervolgens Selenium IDE zoals weergegeven in het onderstaande scherm:
Stap 2) Klik nu op "rode knop opnemen" aan de rechterkant en begin met het uitvoeren van de Flash-film en dan vindt u het opgenomen script zoals hieronder weergegeven:
Als de gebruiker na het opnemen het script wil uitvoeren, kan hij op de "groene startknop" klikken zoals weergegeven in het onderstaande scherm. De Selenium IDE zal het script stap voor stap uitvoeren.
Hoe u Flash kunt automatiseren met Selenium Webdriver.
U kunt de flits ook automatiseren met behulp van het Selenium-webstuurprogramma via het Flashwebdriver-object en vervolgens een methode aanroepen om het flash-object te bedienen. U moet jar-bestanden van flashwebdriver downloaden:
Stap 1) Voeg na het downloaden het jar-bestand toe aan uw project zoals weergegeven in het onderstaande scherm.
Stap 2) Onder het flash jar-bestand bevindt zich een aparte klasse flashobjectwebdriver. Implementeer de flashWebdriver "myFlashmovie" in uw seleniumscript zoals hieronder op het scherm wordt weergegeven.
Nadat u de webstuurprogrammaklasse "MyFlashMovie" hebt toegevoegd, krijgt u toegang tot het Flash-object.
Wanneer flash-testen automatiseren
Gewoonlijk moet u Flash-tests automatiseren wanneer het Flash-object niet gemakkelijk toegankelijk is. Dit testresultaat wordt afgebroken en kan daarom geen Flash-object testen.
Seleniumscript maken voor Flash-testen.
Stap 1) U gebruikt het flash-filmpje "Guru99" om het flash-scenario te testen.
http://demo.guru99.com/test/flash-testing.html
Stap 2) Schrijf een script in Selenium eclipse en voer het uit. Onderstaande code zal bij uitvoering de volgende dingen doen
- Open de Firefox-browser,
- Start de guru99 flash-site,
- Speel de flash-film af en
- Stop dan de film.
importeer org.openqa.selenium.firefox.FirefoxDriver;importeer Flash.FlashObjectWebDriver;openbare les Flash {public static void main (String [] args) gooit InterruptedException {// Open de firefox-browserFirefoxDriver-stuurprogramma = nieuwe FirefoxDriver ();// Maximaliseer browserdriver.manage (). window (). maximaliseren ();// Onder het Flash-jar-bestand bevindt zich een afzonderlijke FlashObjectWebDriver-klasseFlashObjectWebDriver flashApp = nieuwe FlashObjectWebDriver (driver, "myFlashMovie");// Geef de URL van de video doordriver.get ("http://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 testen met selenium Webdriver");System.out.println (flashApp.callFlashObject ("GetVariable", "/: message"));
Stap 3) : Voer het bovenstaande script uit.
Output: Bij uitvoering van het bovenstaande script begint de flash-film te spelen en te stoppen enz.
Uitdagingen bij Flash-testen
- Het automatiseren van de flash-app is een uitdaging. Om de flash-app te automatiseren, kunt u FlexMonkium gebruiken, een add-on voor Selenium IDE.
- U kunt problemen ondervinden bij het inschakelen van Flex-apps voor opnemen / afspelen met Selenium-Flexmonkium-integratie. Oplossing is dat de gebruiker Flex monkium naar selenium IDE zorgvuldig moet installeren en integreren. Een juiste installatie maakt het mogelijk dat record flash-apps automatiseert.
Overzicht:
- Bij Flash-testen moet u controleren of de Flash-video, games, films, enz. Werken zoals verwacht of niet.
- U gebruikt flash-attributen zoals object-id om het flash-object te lokaliseren. En daardoor kunt u er naar wens bewerkingen op uitvoeren, zoals afspelen, stoppen, enz.
- Het belangrijkste verschil tussen Flash en een ander element is dat Flash is ingesloten in SWF-bestanden, terwijl andere elementen zijn ingesloten in HTML-bestanden
- U moet Flash-tests normaal automatiseren als het Flash-object niet gemakkelijk toegankelijk is.
- Hulpmiddelen die handig zijn bij flash-testen zijn
- Selenium
- Soap UI
- TestComplete
- Test Studio enz.
- Het automatiseren van de flash-app is een uitdaging. Om de flash-app te automatiseren, kunt u FlexMonkium gebruiken, een add-on voor Selenium IDE.