Wat is Selenium? Aan de slag met Selenium Automation Testing

weet u wat Selenium is? Heb je enig idee waarom het wordt gebruikt? Als u het antwoord op deze twee vragen wilt, wacht dan tot u de volledige inhoud van deze blog leest, want u zult blij zijn dat u een waardige hoeveelheid tijd hebt doorgebracht om een introductie te krijgen over wat er in het hart van uw volgende baanrol zou kunnen zijn.

automatiseringstests nemen de wereld stormenderhand in beslag & Seleencertificering is een van de meest gewilde vaardigheden in de industrie.

Wat is Selenium?

Selenium is een open-source tool die wordt gebruikt voor het automatiseren van de tests uitgevoerd op webbrowsers (webtoepassingen worden getest met behulp van een webbrowser).

wacht, voordat je je laat meeslepen, laat me herhalen dat alleen het testen van webapplicaties mogelijk is met Selenium. We kunnen geen desktop (software) applicatie testen, noch een mobiele applicatie testen met Selenium.

Het is een bummer toch? Ik kan je pijn voelen. Maar maak je geen zorgen, er zijn veel tools voor het testen van software en mobiele applicaties zoals: IBM ’s RFT, HP’ s QPT, Appium en nog veel meer. Maar, de focus van deze blog is, het testen van dynamische webapplicaties en waarom Selenium is de beste voor dat doel.

Wat zijn de voordelen van Selenium?

aangezien Selenium open-source is, zijn er geen licentiekosten, wat een groot voordeel is ten opzichte van andere testinstrumenten. Andere redenen achter de groeiende populariteit van Selenium zijn:

selenium features - Wat is selenium

  • testscripts kunnen in elk van deze programmeertalen geschreven worden: Java, Python, C#, PHP, Ruby, Perl & .Net
  • Tests kunnen worden uitgevoerd in een van deze OS: Windows, Mac of Linux
  • Tests kunnen worden uitgevoerd met behulp van een browser: Mozilla Firefox, Internet Explorer, Google Chrome, Safari of Opera
  • Het kan worden geïntegreerd met tools zoals TestNG & JUnit voor het beheren van test cases en het genereren van rapporten
  • Het kan worden geïntegreerd met Maven, Jenkins & Docker om te komen tot Continue Testen

Maar er heeft zeker zijn tekortkomingen toch?

  • We kunnen Selenium alleen gebruiken om webtoepassingen te testen. We kunnen geen desktoptoepassingen of andere software
  • testen Er is geen gegarandeerde ondersteuning beschikbaar voor Selenium. We moeten gebruik maken van de beschikbare customer communities
  • het is niet mogelijk om testen uit te voeren op afbeeldingen. We moeten Selenium integreren met Sikuli voor image based testing
  • Er is geen native reporting facility. Maar we kunnen dat probleem oplossen door het te integreren met frameworks zoals TestNG of JUnit

voordat we verder gaan in deze Wat is Selenium blog, moet je het verhaal achter hoe Selenium tot stand kwam wat het vandaag is kennen. Dus, laten we het scenario in de onderstaande volgorde begrijpen:

    1. need for software testing
    2. uitdagingen met handmatig testen
    3. Hoe automatiseringstests beter zijn dan handmatig testen?
    4. Selenium vs. andere testgereedschappen?
    5. Selenium suite van tools

behoefte aan Software testen

Software testen is waar het allemaal op neer komt. De huidige wereld van de technologie wordt volledig gedomineerd door machines, en hun gedrag wordt gecontroleerd door de software die het aandrijft. Zullen de machines zich precies gedragen zoals wij dat willen? Elke keer? Overal? Het antwoord op deze vragen ligt in het testen van software.

aan het eind van de dag, is het succespercentage van de software applicatie die gaat om uw bedrijfsgroei te controleren. Hetzelfde kan gezegd worden, zelfs voor webapplicaties, omdat de meeste bedrijven vandaag volledig afhankelijk zijn van het internet.

Neem bijvoorbeeld elk e-commerce bedrijf. Of het nu Amazon of E-Bay of Flipkart, ze vertrouwen op het klantverkeer op hun websites en het verkeer op hun web-based mobiele applicaties voor het bedrijfsleven.

stel je voor dat er iets catastrofaals gebeurt, zoals de prijzen van een aantal producten die worden afgetopt op 10$, allemaal vanwege een kleine bug in een” niet zo gemakkelijk leesbaar ” deel van de code. Wat kunnen we dan doen en hoe kunnen we dat de volgende keer voorkomen?

door de code te testen voor de implementatie, toch? Dus, dat is de noodzaak voor software testen. Maar wat is Selenium? Is het een software testing tool? Goed, Selenium is een automatisering Testen tool!

voordat ik verder ga, laat me duidelijk dat, Software testen is van twee soorten: Handmatige tests & automatiseringstests. Selenium werd opgericht als een automatisering testing tool om de nadelen/ beperkingen van handmatige testen te overwinnen. Zo, in de volgende sectie van dit wat selenium blog, laten we begrijpen de uitdagingen met handmatige tests.

uitdagingen met handmatige tests

handmatige tests betekent dat de (web) applicatie handmatig wordt getest door QA-testers. Tests moeten handmatig worden uitgevoerd in elke omgeving, met behulp van een andere dataset en het succes/ falen van elke transactie moet worden geregistreerd.

handmatige testuitdagingen - Wat is selenium

Kijk naar het bovenstaande beeld van een slechte chap, die handmatig de geregistreerde transacties verifieert. De uitdagingen waar hij voor staat veroorzaken vermoeidheid, verveling, werkvertraging, fouten en fouten door handmatige inspanning. Dit leidde tot de uitvinding van Selenium (automation testing tool).

automatiseringstests verslaat handmatige tests

automatiseringstests verslaat handmatige tests elke keer. Waarom? Omdat het sneller is, minder investeringen nodig heeft in human resource, het is niet gevoelig voor fouten, frequente uitvoering van tests is mogelijk, ondersteunt lights out uitvoering, ondersteunt regressie testen en ook functionele testen.

laten we een vergelijkbaar voorbeeld nemen als het eerder genoemde. Stel dat er een inlogpagina is en we moeten controleren of alle inlogpogingen succesvol zijn, dan zal het heel gemakkelijk zijn om een stukje code te schrijven dat zal valideren of alle transactie/ inlogpogingen een succes zijn of niet (geautomatiseerde testcase uitvoering).

bovendien kunnen deze tests zo worden geconfigureerd dat ze in verschillende omgevingen en webbrowsers worden getest. Wat kunnen we nog meer doen? U kunt het genereren van het resultaatbestand automatiseren door het voor een bepaalde tijd gedurende de dag te plannen. Dan kunt u ook automatiseren het genereren van rapporten op basis van die resultaten en wat niet.

het belangrijkste punt is dat automatiseringstests de taak van een tester een stuk eenvoudiger maken. Bekijk de afbeelding hieronder die een meer ontspannen omgeving toont waarin dezelfde tester werkt.

automation testing - Wat is selenium

Nu, Laat me praten over Selenium in het bijzonder.

laten we nu zien waar Selenium op de markt staat.

Selenium vs QTP vs RFT

Ik heb de prestaties vergeleken met twee andere populaire tools: QTP en RFT in de onderstaande tabel.

Features HP QTP IBM RFT Selenium
License Required Required Open-source
Cost High High Open-source software
Customer Support Dedicated HP support Dedicated IBM support Open-source Community
Hardware consumption during script execution High High Low
Coding experience Not required Verplicht Ruime hoeveelheid codering vaardigheden en ervaring die nodig
Omgeving ondersteuning Alleen voor Windows Alleen voor Windows Windows, Linux, Solaris OS X (Als browser & JVM of JavaScript ondersteuning bestaat)
Taal Ondersteuning VB-Script Java en C# Java, C#, Ruby, Python, Perl, PHP en JavaScript

Het is vrij duidelijk uit bovenstaande tabel, waarom Selenium is de meest aangewezen instrument. Maar er zijn veel smaken in Selenium en je moet weten wat is de juiste juiste selenium tool voor uw behoefte.

selenium Suite of Tools

  • Selenium RC (nu afgeschreven)
  • Selenium IDE
  • Selenium Grid
  • Selenium WebDriver

Wat zijn de componenten van Selenium?

hieronder heb ik elk van de componenten van het Selenium in detail uitgelegd:

Selenium RC (Remote Control)

voordat ik het heb over de details van Selenium RC, wil ik graag een stap terug gaan en het hebben over het eerste gereedschap in het Selenium project. Seleniumkern was het eerste Gereedschap. Maar, Selenium kern raakte een wegblokkade in termen van cross-domain testen als gevolg van dezelfde oorsprong beleid. Dezelfde oorsprong beleid verbiedt JavaScript code toegang tot web elementen die worden gehost op een ander domein in vergelijking met waar de JavaScript werd gelanceerd.

om het probleem van hetzelfde origin-beleid op te lossen, moesten testers lokale kopieën installeren van zowel Selenium Core (een JavaScript-programma) als de webserver die de te testen webtoepassing bevat, zodat ze tot hetzelfde domein zouden behoren. Dit leidde tot de geboorte van Selenium RC, dat is geaccrediteerd aan de toenmalige ingenieur van ThoughtWork, Paul Hammant.

RC overwon het probleem door een HTTP-proxyserver te betrekken om de browser te laten geloven dat Seleniumkern en de webtoepassing die wordt getest uit hetzelfde domein komen. Zo wordt RC een tweecomponententool.

  1. Selenium RC Server
  2. Selenium RC Client-Library met uw programmeertaal code

RC Server communiceert met behulp van eenvoudige HTTP GET / POST verzoeken. Kijk naar de onderstaande afbeelding voor het begrijpen van de RC-architectuur.

selenium rc - Wat is selenium

Selenium project ‘ s vlaggenschip tool was Selenium RC omdat het hun eerste tool was en het kon worden gebruikt om testcases in verschillende programmeertalen te schrijven. Maar het nadeel van RC is dat elke communicatie met de RC server is tijdrovend en dus RC is erg traag. Zo traag, dat het soms uren zou duren om enkele tests te voltooien.

vanaf Selenium v3 is RC afgeschreven en verplaatst naar een oud pakket. U kunt echter downloaden en werken met RC, maar helaas kunt u geen gebruik maken van ondersteuning voor het. Maar aan de andere kant, waarom zou je een tool die is verouderd gebruiken, vooral als er een meer efficiënte tool genaamd Selenium WebDriver. Voordat ik praat over WebDriver, laat me bespreken over IDE en Grid, die de andere tools die deel uitmaken van Selenium v1.

Selenium IDE (Integrated Development Environment)

in 2006 had Shinya Kastani uit Japan zijn Selenium IDE prototype gedoneerd aan Apache ‘ s Selenium project. Het was een Firefox plugin voor snellere creatie van testcases. IDE geïmplementeerd een record en afspelen model waarin, test cases worden gemaakt door het opnemen van de interacties die de gebruiker had met de webbrowser. Deze tests kunnen dan een aantal keren worden afgespeeld.

het voordeel van Selenium IDE is dat tests die via de plug-in zijn opgenomen, kunnen worden geëxporteerd in verschillende programmeertalen zoals: Java, Ruby, Python etc. Bekijk de onderstaande screenshot van Firefox IDE plugin.

selenium ide - wat is selenium

maar de bijbehorende tekortkomingen van IDE zijn:

  • Plug-in alleen beschikbaar voor Mozilla Firefox; niet voor andere browsers
  • het is niet mogelijk om dynamische webtoepassingen te testen; alleen eenvoudige tests kunnen worden geregistreerd
  • testcases kunnen niet worden scripted met behulp van programmeerlogica
  • ondersteunt geen data-Driven testen

Dit waren enkele aspecten van Selenium IDE. Laat me nu praten over Selenium raster.

Wat is Seleniumraster

Seleniumraster werd ontwikkeld door Patrick Lightbody en werd aanvankelijk HostedQA genoemd (aanvankelijk een deel van Selenium v1) en werd gebruikt in combinatie met RC om tests uit te voeren op remote machines. In feite kunnen met Grid meerdere testscripts tegelijkertijd op meerdere machines worden uitgevoerd.

parallelle uitvoering wordt bereikt met behulp van Hub-Node architectuur. Een machine zal de rol van Hub op zich nemen en de anderen zullen de knooppunten zijn. Hub bestuurt de testscripts die worden uitgevoerd op verschillende browsers binnen verschillende besturingssystemen. Testscripts die op verschillende knooppunten worden uitgevoerd, kunnen in verschillende programmeertalen worden geschreven.

selenium raster - Wat is selenium

raster is nog steeds in gebruik en werkt met zowel WebDriver als RC. Het onderhouden van een raster met alle vereiste browsers en besturingssystemen is echter een uitdaging. Voor deze, er zijn meerdere online platforms die een online Selenium Grid dat u toegang tot uw selenium automatisering scripts uitvoeren bieden. U kunt bijvoorbeeld LambdaTest gebruiken. Het heeft meer dan 2000 browser-omgevingen waarop u uw tests kunt uitvoeren en echt automatiseren cross-browser testen.

Wat is Selenium WebDriver

Selenium WebDriver werd opgericht door Simon Stewart in 2006 en was het eerste cross-platform test framework dat de browser kon besturen vanaf OS-niveau. In tegenstelling tot IDE biedt Selenium WebDriver een programmeerinterface om testcases te maken en uit te voeren. Testcases worden zo geschreven dat webalementen op webpagina ‘ s worden geïdentificeerd en vervolgens acties worden uitgevoerd op die elementen.

WebDriver is een upgrade naar RC omdat het veel sneller is. Het is sneller omdat het maakt directe gesprekken naar de browser. RC aan de andere kant heeft een RC-server nodig om te communiceren met de webbrowser. Elke browser heeft zijn eigen driver waarop de toepassing wordt uitgevoerd. De verschillende WebDrivers zijn:

  • Firefox-Stuurprogramma (Gecko Bestuurder)
  • Chroom-Driver
  • Internet Explorer Driver
  • Opera Driver
  • Safari Chauffeur en
  • HTM Unit Driver

de Voordelen Van Selenium WebDriver

  • Ondersteuning voor 7 programmeertalen: JAVA, C#, PHP, Ruby, Perl, Python en .Netto.
  • Ondersteunt testen op verschillende browsers, zoals: Firefox, Chrome, IE, Safari
  • Tests kunnen worden uitgevoerd op verschillende besturingssystemen, zoals: Windows, Mac, Linux, Android, iOS
  • overwint beperkingen van Selenium v1 zoals Bestand uploaden, downloaden, pop-ups & dialoogbarrière

Short-comings van Selenium WebDriver

  • gedetailleerde testrapporten kunnen niet worden gegenereerd
  • testafbeeldingen zijn niet mogelijk

maakt niet uit de uitdaging, deze tekortkomingen kunnen worden overwonnen door integratie met andere kaders. Voor het testen van beelden, kan Sikuli worden gebruikt, en voor het genereren van gedetailleerde testrapporten, kan TestNG worden gebruikt.

dus dat trekt de conclusie van dit blog over wat Selenium is. Voor meer informatie over Selenium WebDriver en TestNG, lees de andere blogs in deze Selenium tutorial blog serie. U kunt als alternatief de video hieronder geleverd door een industrie-expert, waar ze haar mening over Selenium heeft gedeeld als een automatisering testtool.

Wat is Selenium? | Selenium Tutorial / Selenium Training/Edureka

Dit ‘Wat is selenium’ blog is de eerste in de selenium tutorial blog serie. Blijf op de hoogte van Edureka ‘ s blog site voor meer blogs op Selenium.

Als u Selenium wilt leren en een carrière wilt opbouwen in het testdomein, bekijk dan onze interactieve, live-online Seleniumcertificatietraining hier, die wordt geleverd met 24*7 ondersteuning om u tijdens uw leerperiode te begeleiden.

Related Posts

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *