Selen gør det ikke nemt at forstå, hvordan det er QTP? Det er en favorit blandt programmører, men det er en stor barriere for nybegyndere inden for testning.
Hvad er selen? Hvad er Selenium RC? Hvad er Webdriver? Hvad er forholdet mellem RC og Webdriver? Hvad er forholdet mellem webdriver og programmeringssprog? Kan Selenium udføre scripts parallelt?
Her fortæller insektmesteren dig på en enkel måde, at deres indviklede forhold er kompliceret. Få styr på forholdet mellem dem, så de virkelig kan bruge det.
Hvad er selen?
Selenium er et værktøjssæt til testning af webautomatisering, der inkluderer IDE, Grid, RC (selenium 1.0), WebDriver (selenium 2.0) osv. Selenium IDE er et plugin til Firefox-browseren. Tilbyder simple funktioner til scriptoptagelse, redigering og afspilning. Selenium Grid bruges til at fordele testfodtrinene. Den er nu integreret i Selenium Server. RC og WebDriver bør ses mere som et sæt specifikationer, der definerer protokollerne for, hvordan klientens fodtrin kan interagere med browseren. og grænsefladen til elementpositionering og manipulation.
Hvad er WebDriver? Det er ikke let for studerende, der er nye inden for automatiseret test af selenium, at forstå, hvad API er, og hvordan det relaterer sig til programmeringssprog.
http://www.w3.org/TR/2013/WD-webdriver-20130117/
Da jeg først lærte Selenium (WebDriver), tog det mig en uge at oversætte dette dokument, men jeg forstod ikke, hvad det var. Faktisk er det en grundlæggende protokolspecifikation. For eksempel siger Webdriver API'en, at vi skal tilbyde en metode til at finde sideelement-ID'er.
Hvordan organiserer og udfører webdriver use cases?
Beklager, webdriveren vil ikke.
Organisering af metoderne (use cases) til at manipulere disse sideelementer og indtaste testresultaterne udføres af enhedstest-rammeværket i programmeringssproget. For eksempel Javas Junit og TestNG enhedstest-frameworks, Pythons UnitTest unit testing-framework osv.
Hvad er forholdet mellem Selenium RC og WebDriver?
RC og WebDriver ligner hinanden ved, at de kan ses som et sæt specifikationer for drift af websider. Selvfølgelig fungerer de forskelligt.
selenium RC kører Javascrip{filter}t-applikationen i browseren ved brug af browserens indbyggede Javascrip{filter}t-oversætter til at oversætte og udføre selenese-kommandoer (selenese er en samling af selenium-kommandoer).
WebDriver styrer browseren direkte gennem native browserunderstøttelse eller browserudvidelser. WebDriver er udviklet til individuelle browsere og erstatter Javascrip{filtering}t, der er indlejret i den webapplikation under test. Tæt integration med browsere muliggør oprettelse af mere avancerede tests, hvilket undgår de begrænsninger, som Javascrip{filtering}t sikkerhedsmodellen medfører. Ud over understøttelse fra browserleverandører bruger WebDriver også OS-niveau kald til at simulere brugerinput.
Det ser ud til, at webdriveren er lidt bedre. For at opretholde kompatibilitet eksisterer RC og webdriver side om side i selenium 2.0, men selen 2.0 refererer generelt til webdriver.
Forskellen mellem parallel og distribueret
Nogle studerende er nysgerrige på, hvordan man udfører testcases parallelt, og parallelisme kræver, at flere brugstilfælde udføres "samtidig", hvilket også realiseres af multitrådningsteknologien i programmeringssprog.
Er Selenium Grid ikke i stand til distribueret eksekvering, spørger du? Konceptet med distribution er at skrive et brugstilfælde, der kan køres på forskellige platforme, såsom et testtilfælde på computer A, hvor man kan kalde Firefox-browseren på computer B (linux) for at køre testcasen på computer A; Du kan også kalde Chrome-browseren på computer C (Windows) for at køre testcasen på computer A. Dette er begrebet distribution.
|