Flash-testning med Selen WebDriver

Innehållsförteckning:

Anonim

Vad är Flash Testing?

Flash Testing är testtyp som används för att kontrollera flashbaserad video, spel, filmer etc. fungerar som förväntat. Med andra ord är testning av blixtens funktionalitet känd som Flash Testing. Flash är mycket populär mjukvara utvecklad av Mircomedia (nu förvärvat av Adobe). Den används för att utveckla spel, applikationer, grafiska animationer, film, mobilspel, program etc. In

I Selenium Automation, om elementen inte hittas av de allmänna lokaliserarna som id, klass, namn osv . då krävs XPath för att hitta ett element på webbsidan för att utföra operation på det specifika elementet. Men i Flash-testning misslyckas XPath med att komma åt flash-objekt. Så Flashwebdriver-objekt krävs för att hitta flash-objekt i alla applikationer.

Här kommer du att se hur man kör flashtestning och hur man gör flashtestning med selen.

I den här handledningen lär du dig-

  • Vad är Flash Testing?
  • Hur Flash-test skiljer sig från andra element
  • Hur kan du få flash-objekt-ID för flashfilm / flash-app
  • Hur man automatiserar Flash med Selen IDE-inspelning
  • Hur man automatiserar Flash med Selenium Webdriver.
  • Skapar selen-skript för Flash-testning.

Förutsättning för Flash-testning

Nedan följer kraven för att testa flashapplikationen

  1. Flash-applikation.
  2. Stöd webbläsare.
  3. Adobe Flash player plugins.

Verktyg - Nedan finns testverktygen som är användbara vid flashtestning.

  1. Selen
  2. Tvål UI
  3. TestComplete
  4. Teststudio etc.

Selen är ett mycket populärt verktyg för webbtestning. Du kan skapa ramverk på olika plattformar och på ett annat språk. Det är ett verktyg för öppen källkod och kan laddas ner från den officiella webbplatsen. Det är enkelt att konfigurera, använda och implementera.

Hur Flash-test skiljer sig från andra element

  • Varför det är svårt att fånga flash-objekt? Hur löses det?

Flash är en föråldrad teknik. Det är svårt att fånga ett flash-objekt eftersom det skiljer sig från HTML. Flash är också en inbäddad SWF-fil (Small Web Format). Det är också svårt att komma åt Flash-objekt på en mobil enhet.

Att utveckla flash är svårare än att utveckla HTML-sida med SEO-perspektivet (sökmotoroptimering) eftersom flash inte är helt läsbar av sökmotorn. Men avancerad teknik som HTML 5 introduceras för att lösa problemen som prestanda och säkerhet.

  • Vilka sätt testas flashapplikationen.

Flash-applikationer testas på två sätt:

  • Manuell - Du kan testa Flash-objektet genom att utföra testfall manuellt eftersom det är enkelt och lätt att testa. Efter buggfixering ser du till att flash fungerar som förväntat och ger avloggning.
  • Automation - Du använder för att skriva ett skript med vilket automatiseringsverktyg som helst som Selen, SoapUI, TestComplete, etc. och kör skriptet.
  • Skillnad mellan Flash och annat element.

Som nämnts ovan är den största skillnaden mellan flash och annat element att Flash är inbäddat i SWF-filer, medan andra element är inbäddade i HTML-filer. Det är därför HTML är lätt att fånga jämfört med flash.

Hur kan du få flash-objekt-ID för flashfilm / flash-app

På alla webbsidor används -taggen för alla inbäddade multimedia (som Flash, ActiveX, Video etc.). Det innebär att "bädda in" i ett HTML-dokument. Den här taggen definierar en behållare inbäddad i eller taggar i en HTML) för interaktivt innehåll eller extern applikation. Objektnamn används för att lokalisera flash-objekt på webbsidor.

Till exempel, i exemplet nedan kan du se att flashfilmen är definierad i en "inbäddad" tagg i HTML-dokument eller -fil.

Exempel:

/ * HTML-sida * /

Använda objekt-ID för att hitta Flash-element.

Du kan använda blixtattribut som objekt-id för att hitta blixtobjektet. Och därigenom kan du utföra operationer på det efter behov som spela, stoppa etc.

Som redan diskuterats går det inte att komma åt Flash-objekt med XPath. Så för att göra några åtgärder på dessa objekt måste utvecklaren tilldela lämpligt objekt-ID.

Nedanstående skärm visar objekt-ID "MyFlashMovie" tilldelas för Flash:

Hur man automatiserar Flash med Selen IDE-inspelning

Du kan också automatisera blixten med Selen IDE.

Steg 1) Du måste öppna flashapplikationen och sedan Selen IDE enligt bilden nedan:

Steg 2) Klicka nu på "spela in röd knapp" på höger sida och börja göra på Flash-film och sedan hittar du det inspelade skriptet som visas nedan:

Om användaren vill köra skriptet efter inspelning kan de klicka på den "gröna körknappen" som visas på skärmen nedan. Selen IDE kör skriptet steg för steg.

Hur man automatiserar Flash med Selenium Webdriver.

Du kan också automatisera blixten med Selenium-webbdrivrutinen via Flashwebdriver-objektet och sedan anropa en metod för att hantera flash-objekt. Du måste ladda ner flashwebdriver jar-filer:

Steg 1) Efter nedladdningen lägger du till jar-filen i ditt projekt som visas på skärmen nedan.

Steg 2) Under flash jar-filen finns en separat flashobjectwebdriver-klass. Implementera flashWebdriver "myFlashmovie" i ditt selen-skript som visas nedan på skärmen.

När du har lagt till webbdrivrutinklass "MyFlashMovie" kan du komma åt Flash-objektet.

När ska man automatisera flash-testning

Vanligtvis måste du automatisera Flash-testning när flash-objektet inte är lättillgängligt. Detta resulterar i testning avbryts och kan därför inte testa Flash-objektet.

Skapar selen-skript för Flash-testning.

Steg 1) Du använder flashfilmen "Guru99" för att testa flash-scenariot.

http://demo.guru99.com/test/flash-testing.html

Steg 2) Skriv ett manus i Selen-eclipse och kör det. Nedanstående kod när den körs kommer att göra följande saker

  • Öppna Firefox-webbläsaren,
  • Starta guru99 flash-webbplatsen,
  • Spela flashfilmen och
  • Stoppa sedan filmen.
importera org.openqa.selenium.firefox.FirefoxDriver;importera Flash.FlashObjectWebDriver;offentlig klass Flash {public static void main (String [] args) kastar InterruptedException {// Öppna Firefox-webbläsarenFirefoxDriver-drivrutin = ny FirefoxDriver ();// Maximera webbläsarendriver.manage (). fönster (). maximera ();// Under Flash jar-filen finns separat FlashObjectWebDriver-klassFlashObjectWebDriver flashApp = ny FlashObjectWebDriver (drivrutin, "myFlashMovie");// Skicka webbadressen till videondriver.get ("http://demo.guru99.com/test/flash-testing.html");Thread.sleep (5000);flashApp.callFlashObject ("Spela upp");Thread.sleep (5000);flashApp.callFlashObject ("StopPlay");Thread.sleep (5000);flashApp.callFlashObject ("SetVariable", "/: meddelande", "Flash-test med selen Webdriver");System.out.println (flashApp.callFlashObject ("GetVariable", "/: meddelande"));}}

Steg 3) : Kör ovanstående skript.

Output: Vid utförandet av ovanstående skript börjar flashfilmen att spelas och stoppas etc.

Utmaningar i Flash Testing

  • Att automatisera flash-appen är en utmaning. För att automatisera flash-appen kan du använda FlexMonkium som är ett tillägg för Selen IDE.
  • Du kan få problem för att aktivera inspelning / uppspelning av Flex-appar med Selenium-Flexmonkium-integration. Lösningen är att användaren måste installera och integrera Flex monkium till selen IDE noggrant. Korrekt installation möjliggör registrering för att automatisera flashappar.

Sammanfattning:

  • Vid Flash-test måste du kontrollera att flashvideo, spel, filmer etc. fungerar som förväntat eller inte.
  • Du använder blixtattribut som objekt-id för att hitta blixtobjektet. Och därigenom kan du utföra operationer på det efter behov som spela, stoppa etc.
  • Huvudskillnaden mellan flash och andra element är att Flash är inbäddat i SWF-filer, medan andra element är inbäddade i HTML-filer
  • Du måste automatisera Flash-testning normalt när flash-objektet inte är lättillgängligt.
  • Verktyg som är användbara vid flashtestning är
  1. Selen
  2. Tvål UI
  3. TestComplete
  4. Teststudio etc.
  • Att automatisera flash-appen är en utmaning. För att automatisera flash-appen kan du använda FlexMonkium som är ett tillägg för Selen IDE.