selenium 4 new features
Denne anmeldelse viser forskellene mellem selen 3 vs selen 4 og nye funktioner og ændringer i den nyeste version selen 4 (alfa 3):
Selenium 4 (Alpha 3) version lanceres nu på markedet. Som vi alle ved er grundlæggeren af Selenium 'Simon Stewart', og nu har han introduceret den nye version ikke kun til webdrivere, men også til Grid og IDE.
Selenium 4 vedtog W3C standard Web Driver Protocol. Alle browsere som Google Chrome, Safari, Internet Explorer, Edge og mange flere følger også W3C-standarden, på grund af hvilken interaktion mellem browserdriveren og Selenium Web Driver nu vil være baseret på W3C-standardwebdriverprotokollen.
Hvad du vil lære:
Selen 4 anmeldelse
Ændringerne relateret til W3C-standarder foretages for at forbedre versionen, da tidligere Selenium-kommandoer fungerede meget forskelligt på forskellige browsere.
Bemærk : Selenium 4 Alpha-version udgivet i april 2019.
Download Selen 4 Alpha-version ved at klikke på “4.0.0-alpha-6” som vist på billedet nedenfor:
Den seneste version Biblioteker findes på Maven Central Repository.
Anbefalet læsning => Selen Remote Driver
Forskellen mellem selen 3 og selen 4
Selen 3 | Selen 4 |
---|---|
Browserinteraktionen er baseret på JSON-wire-protokol, som det kræver kodning og afkodning af API'et | Den følger W3C-standardprotokollen, på grund af hvilken driver- og browserkommunikation følger standardproceduren, ikke kræver kodning og afkodning af API'en, så kommunikation sker direkte. |
Vigtige ændringer i arkitekturen
# 1) Understøttelse fjernet for nogle browsere: Nu har de fjernet understøttelserne til browserne Opera og Phantom JS. Opera-brugere kan bruge Chrome-browseren, mens Phantom JS-brugere kan bruge Chrome eller Firefox i hovedløs tilstand.
# 2) Optimeret selenet: Selen Grid blev udviklet langt tilbage i 2011.
Selenium 4 er kommet med ny arkitektur for at fjerne de problemer, der opstod tidligere under installation og konfiguration, også under forbindelsen mellem hub og node-maskine.
Lad os kort fortælle om Selen Grid, som indeholder to hovedkomponenter:
- Knude: Det bruges til at udføre tests på individuelle computersystemer. Der kan være flere noder i et gitter.
- Nav: Det er det centrale punkt, hvorfra det styrer alle maskiner, der er til stede i netværket, og det indeholder kun en hub, som hjælper med at allokere testudførelse til forskellige noder.
Men i Selenium 4 er Grid meget fleksibel. Det giver os mulighed for at teste sagerne mod flere browsere, browsere i forskellige versioner og også på forskellige operativsystemer. Selv nu er der ikke behov for en opsætning, der starter hub og noder individuelt, når brugeren starter serveren, gitteret fungerer automatisk som både noder og hub.
Det understøtter også avancerede værktøjer som Docker, AWS, Azure og meget mere, der er nyttige i DevOps-processen. Nu har Grid en mere brugervenlig brugergrænseflade og indeholder relevant information relateret til sessionen, kørsel, kapacitet osv.
>> Klik her for mere information.
# 3) Standardiseret dokumentation: Dokumenter spiller en vigtig rolle for enhver bruger, og Selen-dokumenter blev ikke opdateret siden Selenium 2.0.
Med Selenium 4 har de opdateret alle de officielle dokumenter relateret til Selenium, der inkluderer webdriver, Grid og IDE for at forklare de seneste ændringer.
# 4) Forbedring i Selen 4 IDE: Selen IDE er et optage- og afspilningsværktøj, der bruges til brugerinteraktion med browseren, og den nye version af IDE er tilgængelig med flere funktioner
Disse funktioner inkluderer:
- Det forbedrer browsersupport. Nu med en ny version kan enhver browserleverandør nemt tilslutte den nyeste Selen IDE.
- CLI Runner vil være baseret på NodeJS, ikke den HTML-baserede runner, og den understøtter den parallelle udførelse, hvorfra den giver rapporten det samlede antal testsager, der er bestået / mislykkedes sammen med udført tid taget.
# 5) Bedre overvågning: Logning- og anmodningssporingsprocessen er nu forbedret for at give et bedre greb om fejlfindingsprocessen for automatiseringsingeniører, da det ikke er begrænset til kun DevOps.
Funktioner af selen 4
Funktionerne er som følger:
# 1) Optag skærmbillede af specifikt webelement:
Tidligere kan brugerne tage et screenshot af hele siden, da der ikke var nogen mulighed for at tage screenshot af det specifikke webelement. Men med Selenium 4 kan brugerne tage skærmbilledet af et bestemt webelement.
Find nedenstående kode:
WebElement logo=driver.Findelement (By.xpath(“//div(@id=’divLogo’)//img”)); File file=logo.getScreenshotAs(OutputType.FILE); File destFile =new File(“logo.png”); FileUtils.copyFile(file,destfile);
# 2) Åbn den nye fane i browseren:
Nu, i Selenium 4, kan brugeren åbne en URL i en ny fane sammen med den eksisterende fane.
For eksempel: Hvis brugeren ønsker at åbne 2 URL'er i to forskellige faner på samme tid, kan brugeren gøre det med Selenium 4.
Se nedenstående kode til reference:
driver.get(https://www.google.com/); driver.switchTo().newWindow(WindowType.TAB); driver.navigate().to(https://www.crmpro.com/);
# 3) Åbn et nyt vindue i browseren:
Ved hjælp af Selenium 4 kan brugerne også åbne det nye vindue i samme browser.
For eksempel, hvis brugeren ønsker at få adgang til to applikationer i samme browser, kan brugeren nu gøre dette.
Se nedenstående kode til reference:
driver.get(https://www.google.com/); driver.switchTo().newWindow(WindowType.WINDOW); driver.navigate().to(https://www.crmpro.com/);
# 4) Objektplacering:
Nu med Selenium 4 kan brugerne opnå koordinater, dimension, højde, bredde osv. Som placeringen af webelementerne eller objektet.
hvordan man laver liste i java
Find nedenstående kode til din reference:
WebElement logo1=driver.Findelement(By.xpath(“//div(@id=’divLogo’)//img”)); System.out.println(“Height:” +logo.getRect().getDimension().getHeight()); System.out.println(“Height:” +logo.getRect().getDimension().getWidth()); System.out.println(“X Location: “ +Logo.getRect().getX()); System.out.println(“Y Location: “ +Logo.getRect().getY());
# 5) Relative placeringer:
Disse kaldes også Friendly Locators, og denne funktion tilføjes for at finde ud af det element, der findes i nærheden af et andet webelement, eller vi kan sige, at det kan finde webelementerne baseret på GUI-placeringen.
Der er fem lokaliseringer tilføjet i Selenium 4:
- under(): Webelement placeret nedenfor for det angivne element.
- toLeftOf (): Målret webelement, der findes til venstre for det angivne element.
- toRightOf (): Mål webelement, der præsenteres til højre for et specificeret element.
- over(): Webelement placeret ovenfor for det angivne element.
- nær ved() : Målret webelement, der er væk (ca. 50 pixels) fra det angivne element.
Bemærk: Alle ovennævnte relative lokaliseringsmetoder understøtter 'withTagName' -metoden.
Eksemplet nedenfor er til toLeftof () og below () -søgerne:
WebElement book; book = driver.Findelement(RelativeLocators.withTagName(“li”).toLeftOf(By.id(“pid1”)) .below(By.id(“pid2”))); String id1=book.getAttribute (“id1”);
Eksemplet nedenfor er til toRightOf () og ovenfor () -lokatorerne:
WebElement book1; book1 = driver.Findelement(RelativeLocators.withTagName(“li”).toRightOf(By.id(“pid1”)) .above(By.id(“pid2”))); String id2=book1.getAttribute (“id2”);
# 6) Chrome Dev-værktøjer:
I den nye version af Selenium har de foretaget nogle interne ændringer i API'en. Tidligere i Selenium 3 udvides Chrome-driveren direkte til klassen Remote Web Driver. Men nu i Selenium 4 udvides Chrome-driverklassen til Chromium Driver. Chromium Driver-klassen har nogle foruddefinerede metoder til at få adgang til dev-værktøjet.
Bemærk: Chromium Driver udvider klassen Remote Web-driver.
Ved at bruge API'en kan vi udføre følgende operationer:
- Aktivér netværk offline
- Aktivér netværk online
- Få konsollogfiler
- Load Insure-websted
Konklusion
I denne vejledning har vi dækket introduktionen til den nye version af Selenium 4, nogle kommende funktioner relateret til Selenium Grid, IDE og Selen WebDriver.
Vi har også set en kort beskrivelse af Relative Locators, Chrome dev-værktøjer. Vi kan forvente meget fra Selenium 4, det være sig browsersupport, dokumentation eller UI.
Forfatter: Denne artikel er skrevet af Akanksha K, der har mere end 7 års erfaring inden for softwarekvalitet og opbygning af testrammer.
Anbefalet læsning
- 30+ bedste selen-tutorials: Lær selen med rigtige eksempler
- Selen IDE Download Installation og Core Features Introduktion
- Introduktion til Selen WebDriver - Selen Tutorial # 8
- ChromeDriver Selenium-tutorial: Selenium Webdriver-test på Chrome
- Sådan bruges Firebug til oprettelse af selen-scripts - Selen Tutorial # 4
- Selenium PhantomJS vejledning til hovedløs automatisering
- Selenhandlinger: Håndter dobbelt- og højreklik i selen
- Selen Locators: Identificer webelementer ved hjælp af XPath i Selen (eksempler)