Flash-testing med Selenium webdriver
Hva er Flash-testing?
Flash-testing er testtypen som brukes til รฅ sjekke at flash-baserte videoer, spill, filmer osv. fungerer som forventet. Med andre ord, testing av funksjonaliteten til blitsen er kjent som Flash-testing. Flash er veldig populรฆr programvare utviklet av Mircomedia (nรฅ kjรธpt opp av Adobe). Den brukes til รฅ utvikle spill, applikasjoner, grafikkbaserte animasjoner, film, Mobil spill, programmer osv. I
In Selenium Automatisering, hvis elementene ikke blir funnet av de generelle lokalisatorene som id, klasse, navn osv. da XPath kreves for รฅ finne et element pรฅ nettsiden for รฅ utfรธre operasjoner pรฅ det bestemte elementet. Men i Flash-testing, XPath fรฅr ikke tilgang til flash-objektet. Sรฅ Flashwebdriver-objekt er nรธdvendig for รฅ finne flash-objekt i et hvilket som helst program.
Her vil du se hvordan du kjรธrer flash Testing og hvordan du gjรธr flashtesting med Selenium.
Forutsetning for Flash-testing
Nedenfor er kravene for รฅ teste flash-applikasjonen
- Flash-applikasjon.
- Stรธtte nettleser.
- Adobe Flash player plugins.
Verktรธy-Nedenfor er testverktรธyene som er nyttige i flash-testing.
- Selenium
- Sรฅpe UI
- TestFullfรธr
- Teststudio etc.
Selenium er et veldig populรฆrt verktรธy for netttesting. Du kan lage rammeverk pรฅ tvers av forskjellige plattformer og pรฅ et annet sprรฅk. Det er et รฅpen kildekodeverktรธy og kan lastes ned fra den offisielle nettsiden. Det er enkelt รฅ konfigurere, bruke og implementere.
Hvordan Flash-testing er forskjellig fra andre elementer
- Hvorfor er det vanskelig รฅ fange flashobjekter? Hvordan lรธses det?
Flash er en utdatert teknologi. Det er vanskelig รฅ fange et flash-objekt da det er forskjellig fra HTML. Flash er ogsรฅ en innebygd SWF-fil (Small Web Format). Det er ogsรฅ vanskelig รฅ fรฅ tilgang til Flash-objekter pรฅ en mobil enhet.
ร utvikle flash er vanskeligere enn รฅ utvikle HTML-side med SEO (Search Engine Optimization) perspektivet fordi flash ikke er fullt lesbart av sรธkemotoren. Imidlertid er avanserte teknologier som HTML 5 introdusert for รฅ overvinne problemer som ytelse og sikkerhet.
- Pรฅ hvilke mรฅter testes flash-applikasjonen.
Flash-applikasjoner testes pรฅ to mรฅter:
- Hรฅndbok - Du kan teste Flash-objektet ved รฅ utfรธre testcases manuelt da det er enkelt og lett รฅ teste. Etter feilfiksing forsikrer du deg om at flash fungerer som forventet og gir avmelding.
- Automasjon - Du bruker รฅ skrive et skript ved รฅ bruke et hvilket som helst automatiseringsverktรธy som Selenium, SoapUI, TestComplete, etc. og utfรธr skriptet.
- Forskjellen mellom Flash og andre elementer.
Som nevnt ovenfor, er hovedforskjellen mellom flash og andre elementer at Flash er innebygd i SWF-filer, mens andre elementer er innebygd i HTML-filer. Det er derfor HTML er lett รฅ fange sammenlignet med flash.
Hvordan kan du fรฅ flash-objekt-ID for flash-film / flash-app
Pรฅ alle websider brukes <objekt>-taggen for alle innebygde multimedia (som Flash, ActiveX, Video osv.). Det innebรฆrer "embed" i et HTML-dokument. Denne taggen definerer en beholder innebygd i < object /> eller < embed /> tags i en HTML ) for interaktivt innhold eller ekstern applikasjon. Objektnavn brukes til รฅ finne flash-objekt pรฅ nettsider.
I eksemplet nedenfor kan du for eksempel se at flash-filmen er definert i en "embed"-tag i HTML-dokument eller -fil.
Eksempel:
/* 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>
Bruke objekt-ID for รฅ finne Flash-elementer.
Du kan bruke flash-attributter som objekt-ID for รฅ finne flash-objektet. Og dermed kan du utfรธre operasjoner pรฅ den etter behov, som avspilling, stopp osv.
Som allerede diskutert, kan ikke Flash-objekter nรฅs med XPath. Sรฅ for รฅ gjรธre noen handling pรฅ disse objektene, mรฅ utvikleren tildele passende objekt-ID.
Skjermen nedenfor viser objekt-ID-en "MyFlashMovie" er tildelt for Flash:
Hvordan automatisere Flash ved รฅ bruke Selenium IDE-opptak
Du kan ogsรฅ automatisere blitsen ved hjelp av Selenium SDI.
Trinn 1) Du mรฅ รฅpne flash-applikasjonen og deretter Selenium IDE som vist pรฅ skjermen nedenfor:
Trinn 2) Klikk nรฅ pรฅ "ta opp rรธd knapp" pรฅ hรธyre side og begynn รฅ utfรธre operasjoner pรฅ Flash-film, og sรฅ vil du finne det innspilte skriptet som vist nedenfor:
Etter opptak, hvis brukeren รธnsker รฅ utfรธre skriptet, kan de klikke pรฅ den "grรธnne kjรธr-knappen" som vist pรฅ skjermen nedenfor. De Selenium IDE vil utfรธre skriptet trinn for trinn.
Hvordan automatisere Flash ved รฅ bruke Selenium Webdriver.
Du kan ogsรฅ automatisere blitsen ved hjelp av Selenium webdriver gjennom Flashwebdriver-objektet og kall deretter en metode for รฅ betjene flash-objektet. Du mรฅ Last ned flashwebdriver jar-filer:
Trinn 1) Etter nedlasting, legg til jar-filen i prosjektet ditt som vist pรฅ skjermen nedenfor.
Trinn 2) Under flash jar-filen er det en egen flashobjectwebdriver-klasse. Implementer flashWebdriver "myFlashmovie" i selenskriptet ditt som vist nedenfor pรฅ skjermen.
Etter รฅ ha lagt til nettdriverklassen "MyFlashMovie", kan du fรฅ tilgang til Flash-objektet.
Nรฅr du skal automatisere flashtesting
Vanligvis mรฅ du automatisere Flash-testing nรฅr flash-objektet ikke er lett tilgjengelig. Dette resultatet i testingen avbrytes og klarer derfor ikke รฅ teste Flash-objektet.
Opprette selenskript for Flash-testing.
Trinn 1) Du bruker "Guru99"-flash-filmen for รฅ teste blitsscenariet.
https://demo.guru99.com/test/flash-testing.html
Trinn 2) Skriv et manus i Selenium formรธrkelse og utfรธr den. Koden nedenfor nรฅr den utfรธres vil gjรธre fรธlgende ting
- ร pne Firefox nettleser,
- Start guru99 flash-siden,
- Spill av flash-filmen og
- Stopp deretter filmen.
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"));
}
}
Trinn 3) : Kjรธr skriptet ovenfor.
Utgang: Ved utfรธrelse av manuset ovenfor begynner flash-filmen รฅ spille av og stoppe osv.
Utfordringer i Flash-testing
- Automatisering av flash-app er en utfordring. For รฅ automatisere flash-appen kan du bruke FlexMonkium som er et tillegg for Selenium SDI.
- Du kan fรฅ problemer med รฅ aktivere opptak / avspilling av Flex-apper ved hjelp av Selenium-Flexmonkium-integrasjon. Lรธsningen er at brukeren mรฅ installere og integrere Flex monkium til selen IDE nรธye. Riktig installasjon vil aktivere registrering for รฅ automatisere flash-apper.
Sammendrag
- I Flash-testing mรฅ du sjekke at flash-video, spill, filmer osv. fungerer som forventet eller ikke.
- Du bruker flash-attributter som objekt-ID for รฅ finne flash-objektet. Og dermed kan du utfรธre operasjoner pรฅ den etter behov, som avspilling, stopp osv.
- Hovedforskjellen mellom flash og andre elementer er at Flash er innebygd i SWF-filer, mens andre elementer er innebygd i HTML-filer
- Du mรฅ automatisere Flash-testing normalt nรฅr blitsobjektet ikke er lett tilgjengelig.
- Verktรธy som er nyttige i flash-testing er
- Selenium
- Sรฅpe UI
- TestFullfรธr
- Teststudio etc.
- Automatisering av flash-app er en utfordring. For รฅ automatisere flash-appen kan du bruke FlexMonkium som er et tillegg for Selenium SDI.








