50 most popularly asked selenium interview questions
In deze tutorial hebben we de top op een rijtje gezet 50 meest gestelde Selenium Interview vragen, waaronder Selenium IDE, Selenium RC, Selenium Grid en Selenium WebDriver interviewvragen.
Een korte opmerking over deze Selenium-artikelenreeks voordat we naar deze tutorial gaan:
Dit is de laatste tutorial in onze Selenium online trainingsreeks van meer dan 30 uitgebreide tutorials. Ik hoop dat jullie allemaal genoten hebben van deze tutorials en ervan zijn gaan leren. Als je nieuw bent, ga dan naar deze allereerste tutorial in deze trainingsreeks.
Bekijk ook dit ' De beste online cursus over selenium ”Om de Selenium-automatiseringstool te leren van een expert met meer dan 10 jaar ervaring in Selenium-automatisering.
Top 50 Selenium interviewvragen en antwoorden
Daar gaan we.
V # 1) Wat is automatiseringstesten?
Automatiseringstesten of testautomatisering is een proces waarbij het handmatige proces wordt geautomatiseerd om de te testen applicatie / het systeem te testen. Automatiseringstests omvatten het gebruik van een afzonderlijke testtool waarmee u testscripts kunt maken die herhaaldelijk kunnen worden uitgevoerd en die geen handmatige tussenkomst vereisen.
V # 2) Wat zijn de voordelen van automatiseringstests?
Voordelen van automatiseringstesten zijn:
- Ondersteunt de uitvoering van herhaalde testgevallen
- Helpt bij het testen van een grote testmatrix
- Maakt parallelle uitvoering mogelijk
- Moedigt executie zonder toezicht aan
- Verbetert de nauwkeurigheid waardoor door mensen gegenereerde fouten worden verminderd
- Bespaart tijd en geld
V # 3) Waarom zou selenium als testtool moeten worden geselecteerd?
Selenium
- is een gratis en open source
- hebben een groot gebruikersbestand en helpen gemeenschappen
- compatibel zijn met verschillende browsers (Firefox, Chrome, Internet Explorer, Safari enz.)
- hebben een uitstekende platformcompatibiliteit (Windows, Mac OS, Linux etc.)
- ondersteunt meerdere programmeertalen (Java, C #, Ruby, Python, Pearl etc.)
- heeft nieuwe en regelmatige repository-ontwikkelingen
- ondersteunt gedistribueerde testen
Vraag 4) Wat is selenium? Wat zijn de verschillende seleniumcomponenten?
Selenium is een van de meest populaire geautomatiseerde testsuites. Selenium is zo ontworpen dat het automatiseringstesten van functionele aspecten van webgebaseerde applicaties en een breed scala aan browsers en platforms ondersteunt en aanmoedigt. Vanwege zijn bestaan in de open source-gemeenschap is het een van de meest geaccepteerde tools onder de testprofessionals geworden.
spraakherkenningssoftware is het meest populair voor
Selenium is niet alleen een enkele tool of een hulpprogramma, maar eerder een pakket van verschillende testtools en om dezelfde reden wordt het een Suite genoemd. Elk van deze tools is ontworpen om te voldoen aan verschillende test- en testomgevingsvereisten.
Het suite-pakket bevat de volgende sets tools:
- Selenium Integrated Development Environment (IDE) - Selenium IDE is een hulpmiddel voor opnemen en afspelen. Het wordt verspreid als een Firefox-plug-in.
- Selenium-afstandsbediening (RC) - Selenium RC is een server waarmee een gebruiker testscripts kan maken in de gewenste programmeertaal. Het maakt het ook mogelijk om testscripts uit te voeren binnen het grote spectrum van browsers.
- Selenium WebDriver - WebDriver is een totaal andere tool die verschillende voordelen heeft ten opzichte van Selenium RC. WebDriver communiceert rechtstreeks met de webbrowser en gebruikt zijn native compatibiliteit om te automatiseren.
- Selenium Grid - Selenium Grid wordt gebruikt om uw testuitvoering op meerdere platforms en omgevingen tegelijk te verdelen.
V # 5) Wat zijn de testtypen die door Selenium kunnen worden ondersteund?
Selenium ondersteunt de volgende soorten testen:
- Functioneel testen
- Regressietesten
V # 6) Wat zijn de beperkingen van selenium?
Hieronder volgen de beperkingen van Selenium:
- Selenium ondersteunt het testen van alleen webgebaseerde applicaties
- Mobiele applicaties kunnen niet worden getest met Selenium
- Captcha- en streepjescodelezers kunnen niet worden getest met Selenium
- Rapporten kunnen alleen worden gegenereerd met tools van derden, zoals TestNG of JUnit.
- Omdat Selenium een gratis tool is, is er dus geen kant-en-klare ondersteuning van leveranciers, omdat de gebruiker talloze helpende gemeenschappen kan vinden.
- Van de gebruiker wordt verwacht dat hij beschikt over eerdere kennis van de programmeertaal.
Q # 7) Wat is het verschil tussen Selenium IDE, Selenium RC en WebDriver?
Voorzien zijn van | Selenium IDE | Selenium RC | WebDriver |
---|---|---|---|
Omgaan met waarschuwingen, navigaties en vervolgkeuzemenu's | Selenium IDE biedt niet expliciet hulpmiddelen voor het afhandelen van waarschuwingen, navigatie en vervolgkeuzemenu's | Selenium RC biedt niet expliciet hulpmiddelen voor het afhandelen van waarschuwingen, navigatie en vervolgkeuzemenu's. | WebDriver biedt een breed scala aan hulpprogramma's en klassen die helpen bij het efficiënt en effectief afhandelen van waarschuwingen, navigatie en vervolgkeuzemenu's. |
Browser compatibiliteit | Selenium IDE wordt geleverd als een Firefox-plug-in en ondersteunt dus alleen Firefox | Selenium RC ondersteunt een breed scala aan versies van Mozilla Firefox, Google Chrome, Internet Explorer en Opera. | WebDriver ondersteunt een breed scala aan versies van Mozilla Firefox, Google Chrome, Internet Explorer en Opera. Ondersteunt ook HtmlUnitDriver, een GUI-loze of headless-browser. |
Opnemen en afspelen | Selenium IDE ondersteunt opname- en afspeelfunctie | Selenium RC ondersteunt geen opname- en afspeelfunctie. | WebDriver ondersteunt geen opname- en afspeelfunctie |
Serververeiste | Selenium IDE vereist geen server die moet worden gestart voordat de testscripts worden uitgevoerd | Selenium RC vereist dat de server wordt gestart voordat de testscripts worden uitgevoerd. | WebDriver vereist niet dat een server wordt gestart voordat de testscripts worden uitgevoerd |
Architectuur | Selenium IDE is een op Javascript gebaseerd framework | Selenium RC is een op JavaScript gebaseerd Framework. | WebDriver gebruikt de native compatibiliteit van de browser voor automatisering |
Object georiënteerd | Selenium IDE is geen objectgeoriënteerde tool | Selenium RC is een semi-objectgeoriënteerde tool. | WebDriver is een puur objectgeoriënteerde tool |
Dynamische zoekers (voor het vinden van webelementen op een webpagina) | Selenium IDE ondersteunt geen dynamische zoekers | Selenium RC ondersteunt geen dynamische zoekers. | WebDriver ondersteunt dynamische zoekers |
WAP-testen (iPhone / Android) | Selenium IDE ondersteunt het testen van iPhone / Andriod-applicaties niet | Selenium RC ondersteunt het testen van iPhone- / Android-applicaties niet. | WebDriver is ontworpen om het testen van iPhone / Android-applicaties efficiënt te ondersteunen. De tool wordt geleverd met een groot aantal stuurprogramma's voor op WAP gebaseerde tests. Bijvoorbeeld AndroidDriver, iPhoneDriver |
Luisteraarsondersteuning | Selenium IDE ondersteunt geen luisteraars | Selenium RC ondersteunt geen luisteraars. | WebDriver ondersteunt de implementatie van luisteraars |
Snelheid | Selenium IDE is snel omdat het is aangesloten op de webbrowser die de test start. Zo communiceren de IDE en de browser rechtstreeks | Selenium RC is langzamer dan WebDriver omdat het niet rechtstreeks met de browser communiceert; het stuurt eerder selenese commando's naar Selenium Core, die op zijn beurt met de browser communiceert. | WebDriver communiceert rechtstreeks met de webbrowsers. Het maakt het dus veel sneller. |
V # 8) Wanneer moet ik Selenium IDE gebruiken?
Selenium IDE is de eenvoudigste en gemakkelijkste van alle tools in het Selenium-pakket. De opname- en afspeelfunctie maakt het uitzonderlijk gemakkelijk te leren met minimale kennis van elke programmeertaal. Selenium IDE is een ideaal hulpmiddel voor een naïeve gebruiker.
V # 9) Wat is Selenese?
Selenese is de taal die wordt gebruikt om testscripts te schrijven in Selenium IDE.
Q # 10) Wat zijn de verschillende soorten locators in Selenium?
De locator kan worden aangeduid als een adres dat een webelement uniek identificeert binnen de webpagina. Dus om webelementen nauwkeurig en precies te identificeren, hebben we verschillende soorten locators in Selenium
- ID kaart
- Naam van de klasse
- Naam
- TagName
- Verbind tekst
- PartialLinkText
- Xpath
- CSS-kiezer
- ARREST
Q # 11) Wat is het verschil tussen beweren en verifiëren van opdrachten?
Beweren: Assert-commando controleert of de gegeven voorwaarde waar of onwaar is. Laten we zeggen dat we beweren of het gegeven element op de webpagina aanwezig is of niet. Als de voorwaarde waar is, zal de programmabesturing de volgende teststap uitvoeren, maar als de voorwaarde niet waar is, zou de uitvoering stoppen en zou er geen verdere test worden uitgevoerd.
Verifiëren: Verify commando controleert ook of de gegeven voorwaarde waar of onwaar is. Ongeacht of de conditie waar of onwaar is, stopt de uitvoering van het programma niet, d.w.z. elke fout tijdens de verificatie zou de uitvoering niet stoppen en alle teststappen zouden worden uitgevoerd.
V # 12) Wat is een XPath?
XPath wordt gebruikt om een webelement te lokaliseren op basis van zijn XML-pad. XML staat voor Extensible Markup Language en wordt gebruikt om willekeurige gegevens op te slaan, te ordenen en te transporteren. Het slaat gegevens op in een sleutel / waarde-paar dat sterk lijkt op HTML-tags. Beide zijn opmaaktalen en omdat ze onder dezelfde paraplu vallen, kan XPath worden gebruikt om HTML-elementen te lokaliseren.
Het fundamentele achter het lokaliseren van elementen met XPath is het doorkruisen tussen verschillende elementen over de hele pagina en zo een gebruiker in staat te stellen een element te vinden met de referentie van een ander element.
V # 13) Wat is het verschil tussen '/' en '//' in Xpath?
Enkele schuine streep '/' - Enkele schuine streep wordt gebruikt om Xpath met absoluut pad te maken, d.w.z. het xpath zou worden gemaakt om de selectie te starten vanaf het documentknooppunt / startknooppunt.
Double Slash '//' - Dubbele slash wordt gebruikt om Xpath met relatief pad te maken, d.w.z. het xpath zou worden gemaakt om de selectie te starten vanaf elke plek in het document.
V # 14) Wat is hetzelfde oorsprongsbeleid en hoe kan dit worden behandeld?
Het probleem van hetzelfde oorsprongsbeleid staat geen toegang toe tot de DOM van een document van een oorsprong die verschilt van de oorsprong waarmee we toegang tot het document proberen te krijgen.
Oorsprong is een opeenvolgende combinatie van schema, host en poort van de URL. Voor een URL https://www.softwaretestinghelp.com/resources/ is de oorsprong bijvoorbeeld een combinatie van http, softwaretestinghelp.com, 80 overeenkomstig.
Het Selenium Core (JavaScript-programma) heeft dus geen toegang tot de elementen van een oorsprong die verschilt van waar het werd gelanceerd. Als ik bijvoorbeeld het JavaScript-programma heb gestart vanuit 'https://www.softwaretestinghelp.com', dan zou ik toegang hebben tot de pagina's binnen hetzelfde domein, zoals 'https://www.softwaretestinghelp.com/resources ”Of“ https://www.softwaretestinghelp.com/istqb-free-updates/ ”. De andere domeinen zoals google.com, seleniumhq.org zouden niet meer toegankelijk zijn.
Dus om hetzelfde oorsprongsbeleid te hanteren, werd Selenium Remote Control geïntroduceerd.
Q # 15) Wanneer moet ik Selenium Grid gebruiken?
Selenium Grid kan worden gebruikt om dezelfde of verschillende testscripts op meerdere platforms en browsers tegelijkertijd uit te voeren om gedistribueerde testuitvoering te bereiken, testen in verschillende omgevingen en aanzienlijk te besparen op uitvoeringstijd.
V # 16) Wat bedoelen we met selenium 1 en selenium 2?
Selenium RC en WebDriver, in een combinatie, staan in de volksmond bekend als Selenium 2. Selenium RC alleen wordt ook wel Selenium 1 genoemd.
V # 17) Wat is de nieuwste Selenium-tool?
WebDriver
V # 18) Hoe start ik de browser met WebDriver?
De volgende syntaxis kan worden gebruikt om Browser te starten:
WebDriver-stuurprogramma = nieuw FirefoxDriver ();
WebDriver-stuurprogramma = nieuw ChromeDriver ();
WebDriver-stuurprogramma = nieuw InternetExplorerDriver ();
V # 19) Wat zijn de verschillende typen stuurprogramma's die beschikbaar zijn in WebDriver?
De verschillende stuurprogramma's die beschikbaar zijn in WebDriver zijn:
- Firefox Driver
- InternetExplorer Driver
- ChromeDriver
- SafariDriver
- OperaDriver
- Android Driver
- IPhone Driver
- HtmlUnitDriver
V # 20) Wat zijn de verschillende soorten wachttijden die beschikbaar zijn in WebDriver?
Er zijn er twee soorten wachten beschikbaar in WebDriver
beste muziekdownloader voor Android-telefoons
- Impliciet wachten
- Expliciet wachten
Impliciet wachten: Impliciete wachttijden worden gebruikt om een standaard wachttijd (bijvoorbeeld 30 seconden) te bieden tussen elke opeenvolgende teststap / -opdracht in het hele testscript. De volgende teststap wordt dus pas uitgevoerd als de 30 seconden zijn verstreken na het uitvoeren van de vorige teststap / -opdracht.
Expliciet wachten: Expliciete wachttijden worden gebruikt om de uitvoering te stoppen totdat aan een bepaalde voorwaarde is voldaan of de maximale tijd is verstreken. In tegenstelling tot impliciete wachttijden, worden expliciete wachttijden alleen voor een bepaald exemplaar toegepast.
Q # 21) Hoe typ je een tekstvak in met Selenium?
De gebruiker kan sendKeys ('String die moet worden ingevoerd') gebruiken om de string in het tekstvak in te voeren.
Syntaxis:
WebElement gebruikersnaam = drv .findElement (By.id ( 'E-mail'
// gebruikersnaam invoeren
gebruikersnaam.sendKeys ( 'Sth'
Q # 22) Hoe kun je zien of een element op het scherm wordt weergegeven?
WebDriver faciliteert de gebruiker met de volgende methoden om de zichtbaarheid van de webelementen te controleren. Deze webelementen kunnen knoppen, dropboxen, selectievakjes, keuzerondjes, labels etc. zijn.
- is weergegeven()
- is geselecteerd()
- is ingeschakeld()
Syntaxis:
is weergegeven():
boolean buttonPresence = driver.findElement (By.id ( 'Geloven' )).is weergegeven();
is geselecteerd():
boolean buttonSelected = driver.findElement (By.id ( 'Geloven' )).is geselecteerd();
is ingeschakeld():
boolean searchIconEnabled = driver.findElement (By.id ( 'Gbqfb' )).is ingeschakeld();
Q # 23) Hoe kunnen we een tekst van een webelement krijgen?
De opdracht Get wordt gebruikt om de binnentekst van het opgegeven webelement op te halen. De opdracht vereist geen parameter, maar retourneert een tekenreekswaarde. Het is ook een van de meest gebruikte commando's voor verificatie van berichten, labels, fouten enz. Die op de webpagina's worden weergegeven.
Syntaxis:
String Text = driver.findElement (By.id ('Text')). GetText ();
V # 24) Hoe selecteer ik een waarde in een vervolgkeuzelijst?
De waarde in de vervolgkeuzelijst kan worden geselecteerd met de Select-klasse van WebDriver.
Syntaxis:
selectByValue:
Selecteer selectByValue = nieuw Selecteer ( bestuurder .findElement (By.id ( 'SelectID_One'
selectByValue.selectByValue ( 'Groene waarde'
selectByVisibleText:
Selecteer selectByVisibleText = nieuw Selecteer ( bestuurder .findElement (By.id ( 'SelectID_Two'
selectByVisibleText.selectByVisibleText ( 'Limoen'
selectByIndex:
Selecteer selectByIndex = nieuw Selecteer ( bestuurder .findElement (By.id ( 'SelectID_Three'
selectByIndex.selectByIndex (2);
V # 25) Wat zijn de verschillende soorten navigatieopdrachten?
Hieronder volgen de navigatieopdrachten
navigeren (). terug () - De bovenstaande opdracht vereist geen parameters en brengt de gebruiker terug naar de vorige webpagina in de geschiedenis van de webbrowser.
Voorbeeldcode:
driver.navigate (). terug ();
navigeren (). vooruit () - Met deze opdracht kan de gebruiker naar de volgende webpagina navigeren met verwijzing naar de browsergeschiedenis.
Voorbeeldcode:
driver.navigate (). vooruit ();
navigeren (). vernieuwen () - Met deze opdracht kan de gebruiker de huidige webpagina daar vernieuwen door alle webelementen opnieuw te laden.
Voorbeeldcode:
driver.navigate (). refresh ();
navigeren naar() - Met deze opdracht kan de gebruiker een nieuw webbrowservenster openen en naar de opgegeven URL navigeren.
Voorbeeldcode:
driver.navigate (). naar ('https://google.com');
Q # 26) Hoe klik ik op een hyperlink met linkText?
bestuurder .findElement (By.linkText ( 'Google' )).Klik();
De opdracht vindt het element met behulp van linktekst en klikt vervolgens op dat element en zo wordt de gebruiker omgeleid naar de overeenkomstige pagina.
De bovengenoemde link is ook toegankelijk met de volgende opdracht.
bestuurder .findElement (By.partialLinkText ( 'Goo' )).Klik();
De bovenstaande opdracht vindt het element op basis van de substring van de link tussen haakjes en dus vindt partialLinkText () het webelement met de gespecificeerde substring en klikt er vervolgens op.
Q # 27) Hoe handvat frame in WebDriver
Een inline frame-acroniem als iframe wordt gebruikt om een ander document in het huidige HTML-document in te voegen of gewoon een webpagina in een webpagina door nesten in te schakelen.
Selecteer iframe op id
bestuurder .switchTo (). frame ( ID van het frame
Iframe zoeken met tagnaam
driver.switchTo (). frame (driver.findElements (By.tagName ('iframe'). get (0));
Iframe lokaliseren met index
frame (index)
driver.switchTo (). frame (0);
frame (naam van frame)
driver.switchTo (). frame ('naam van het frame');
frame (WebElement-element)
Selecteer Bovenliggend venster
driver.switchTo (). defaultContent ();
V # 28) Wanneer gebruiken we findElement () en findElements ()?
findElement (): findElement () wordt gebruikt om het eerste element in de huidige webpagina te vinden dat overeenkomt met de opgegeven locatorwaarde. Houd er rekening mee dat alleen het eerste overeenkomende element wordt opgehaald.
Syntaxis:
WebElement-element = bestuurder .findElements (By.xpath ( '// div [@ id = 'voorbeeld'] // ul // li'
findElements (): findElements () wordt gebruikt om alle elementen op de huidige webpagina te vinden die overeenkomen met de opgegeven locatorwaarde. Houd er rekening mee dat alle overeenkomende elementen worden opgehaald en opgeslagen in de lijst met WebElements.
Syntaxis:
Lijst elementList = bestuurder .findElements (By.xpath ( '// div [@ id = 'voorbeeld'] // ul // li'
Q # 29) Hoe vind ik meer dan één webelement in de lijst?
Soms kunnen we elementen van hetzelfde type tegenkomen, zoals meerdere hyperlinks, afbeeldingen enz. Gerangschikt in een geordende of ongeordende lijst. Het is dus absoluut logisch om met dergelijke elementen om te gaan met een enkel stuk code en dit kan worden gedaan met behulp van WebElement List.
Voorbeeldcode
Q # 30) Wat is het verschil tussen de opdracht driver.close () en driver.quit?
dichtbij() : De close () methode van WebDriver sluit het webbrowservenster waar de gebruiker momenteel aan werkt of we kunnen ook zeggen het venster dat momenteel wordt geopend door de WebDriver. De opdracht vereist geen enkele parameter en retourneert ook geen waarde.
stoppen () : In tegenstelling tot de methode close (), sluit de methode quit () alle vensters die het programma heeft geopend. Hetzelfde als de methode close (), de opdracht vereist geen enkele parameter en retourneert ook geen waarde.
V # 31) Kan Selenium Windows-gebaseerde pop-ups aan?
Selenium is een automatiseringstesttool die alleen het testen van webapplicaties ondersteunt. Daarom kunnen pop-upvensters niet worden verwerkt met Selenium.
V # 32) Hoe kunnen we omgaan met webgebaseerde pop-ups?
WebDriver biedt de gebruikers een zeer efficiënte manier om behandel deze pop-ups met behulp van de Alert-interface Er zijn de vier methoden die we zouden gebruiken in combinatie met de Alert-interface.
- void dismiss () - De methode dismiss () klikt op de knop 'Annuleren' zodra het pop-upvenster verschijnt.
- void accept () - De accept () methode klikt op de 'Ok' knop zodra het pop-upvenster verschijnt.
- String getText () - De getText () - methode retourneert de tekst die in het waarschuwingsvenster wordt weergegeven.
- void sendKeys (String stringToSend) - De methode sendKeys () voert het opgegeven tekenreekspatroon in het waarschuwingsvenster in.
Syntaxis:
// JavaScript-waarschuwing accepteren
Alert alert = driver.switchTo (). Alert ();
alert.accept ();
V # 33) Hoe kunnen we omgaan met op vensters gebaseerde pop-ups?
c ++ wacht seconden
Selenium is een automatiseringstool die alleen het testen van webapplicaties ondersteunt, dat wil zeggen dat het geen ondersteuning biedt voor het testen van op Windows gebaseerde applicaties. Selenium alleen kan de situatie echter niet helpen, maar samen met een tussenkomst van een derde partij kan dit probleem worden opgelost. Er zijn verschillende tools van derden beschikbaar voor het afhandelen van op vensters gebaseerde pop-ups, samen met het selenium, zoals AutoIT, Robotklasse enz.
V # 34) Hoe de titel van de webpagina bevestigen?
// controleer de titel van de webpagina
assertTrue ('De titel van het venster is onjuist.', driver.getTitle (). equals ('Titel van de pagina'));
V # 35) Hoe beweeg ik de muis over een webelement met WebDriver?
WebDriver biedt een breed scala aan interactiehulpprogramma's die de gebruiker kan gebruiken om muis- en toetsenbordgebeurtenissen te automatiseren. Action Interface is zo'n hulpprogramma dat de interacties van één gebruiker simuleert.
Daarom hebben we in het volgende scenario Action Interface gebruikt om met de muis over een vervolgkeuzelijst te bewegen, die vervolgens een lijst met opties opent.
Voorbeeldcode:
Q # 36) Hoe CSS-eigenschappen van een element ophalen?
De waarden van de css-eigenschappen kunnen worden opgehaald met behulp van een get () - methode:
Syntaxis:
driver.findElement (By.id ( 'ID kaart “)). GetCssValue ( 'Naam van css-kenmerk'
driver.findElement (By.id ( 'ID kaart “)). GetCssValue ( 'lettertypegrootte'
V # 37) Hoe maak je een screenshot in WebDriver?
Q # 38) Wat is Junit?
Junit is een unit testing framework geïntroduceerd door Apache. Junit is gebaseerd op Java.
V # 39) Wat zijn Junit-annotaties?
Hieronder volgen de JUnit-annotaties:
- @Test: Annotatie laat het systeem weten dat de methode geannoteerd als @Test een testmethode is. Er kunnen meerdere testmethoden zijn in één testscript.
- @Voordat: Methode geannoteerd als @Before laat het systeem weten dat deze methode elke keer vóór elk van de testmethoden zal worden uitgevoerd.
- @Na: Methode geannoteerd als @After laat het systeem weten dat deze methode elke keer na elke testmethode zal worden uitgevoerd.
- @Voor klas: Methode geannoteerd als @BeforeClass laat het systeem weten dat deze methode één keer zal worden uitgevoerd vóór een van de testmethoden.
- @Na de les: Methode met de annotatie @AfterClass laat het systeem weten dat deze methode eenmaal zal worden uitgevoerd na een van de testmethoden.
- @Negeren: Methode geannoteerd als @Ignore laat het systeem weten dat deze methode niet zal worden uitgevoerd.
Q # 40) Wat is TestNG en hoe is het beter dan Junit?
TestNG is een geavanceerd framework dat zo is ontworpen dat het de voordelen van zowel de ontwikkelaars als testers benut. Met het begin van de frameworks won JUnit een enorme populariteit bij de Java-applicaties, Java-ontwikkelaars en Java-testers door de codekwaliteit opmerkelijk te verhogen. Ondanks dat het gebruiksvriendelijk en ongecompliceerd is, heeft JUnit zijn eigen beperkingen die aanleiding geven tot de noodzaak om TestNG in beeld te brengen. TestNG is een open source framework dat wordt gedistribueerd onder de Apache-softwarelicentie en direct beschikbaar is om te downloaden.
TestNG met WebDriver biedt een efficiënt en effectief testresultaatformaat dat op zijn beurt kan worden gedeeld met de belanghebbenden om een glimp op te vangen van de gezondheid van het product / de applicatie, waardoor het nadeel van het onvermogen van WebDriver om testrapporten te genereren wordt geëlimineerd. TestNG heeft een ingebouwd mechanisme voor het afhandelen van uitzonderingen waardoor het programma kan worden uitgevoerd zonder onverwachts te worden beëindigd.
Er zijn verschillende voordelen die TestNG superieur maken aan JUnit. Sommige ervan zijn:
- Voorafgaande en eenvoudige annotaties toegevoegd
- Uitvoeringspatronen kunnen worden ingesteld
- Gelijktijdige uitvoering van testscripts
- Afhankelijkheden van testgevallen kunnen worden ingesteld
Q # 41) Hoe stel ik de prioriteit van testgevallen in TestNG in?
Prioriteit instellen in TestNG
Codefragment
Uitvoeringsvolgorde testen:
- Methode 1
- Methode 2
- Methode 3
Q # 42) Wat is een raamwerk?
Het raamwerk is een constructieve mix van verschillende richtlijnen, coderingsnormen, concepten, processen, praktijken, projecthiërarchieën, modulariteit, rapportagemechanisme, testgegevensinjecties enz. Tot het testen van pijlerautomatisering.
Q # 43) Wat zijn de voordelen van het automatiseringsraamwerk?
Het voordeel van Test Automation-framework
- Herbruikbaarheid van code
- Maximale dekking
- Herstel scenario
- Goedkoop onderhoud
- Minimale handmatige tussenkomst
- Gemakkelijke rapportage
Q # 44) Wat zijn de verschillende soorten frameworks?
Hieronder staan de verschillende soorten frameworks:
- Module gebaseerd testraamwerk: Het raamwerk verdeelt de volledige 'Application Under Test' in het aantal logische en geïsoleerde modules. Voor elke module maken we een apart en onafhankelijk testscript. Dus wanneer deze testscripts samen zijn genomen, wordt een groter testscript gemaakt dat meer dan één module vertegenwoordigt.
- Testkader bibliotheekarchitectuur: Het fundamentele fundament achter het raamwerk is om de algemene stappen te bepalen en ze te groeperen in functies onder een bibliotheek en die functies in de testscripts aan te roepen wanneer dat nodig is.
- Data Driven Testing Framework: Data Driven Testing Framework helpt de gebruiker de testscriptlogica en de testgegevens van elkaar te scheiden. Hiermee kan de gebruiker de testgegevens opslaan in een externe database. De gegevens worden conventioneel opgeslagen in 'Key-Value' -paren. De sleutel kan dus worden gebruikt om toegang te krijgen tot de gegevens in de testscripts en deze te vullen.
- Zoekwoordgestuurd testkader: Het Keyword Driven testing framework is een uitbreiding op Data-driven Testing Framework in die zin dat het niet alleen de testdata van de scripts scheidt, maar ook de bepaalde set code behorende bij het testscript in een extern databestand bewaart.
- Hybride testkader: Hybrid Testing Framework is een combinatie van meer dan één bovengenoemde frameworks. Het beste van een dergelijke opzet is dat het gebruikmaakt van de voordelen van allerlei bijbehorende frameworks.
- Gedragsgestuurd ontwikkelingskader: Behaviour Driven Development-raamwerk maakt automatisering van functionele validaties mogelijk in een gemakkelijk leesbaar en begrijpelijk formaat voor bedrijfsanalisten, ontwikkelaars, testers, enz.
V # 45) Hoe kan ik testgegevens van Excel lezen?
Testgegevens kunnen efficiënt worden gelezen vanuit Excel met behulp van JXL of POI API. Zie hier een gedetailleerde tutorial
Q # 46) Wat is het verschil tussen POI en jxl jar?
| JXL-pot | POI-pot |
---|---|---|
1 | JXL ondersteunt het '.xls' -formaat, d.w.z. binair gebaseerd formaat. JXL ondersteunt geen Excel 2007- en '.xlsx' -indelingen, d.w.z. XML-gebaseerde indeling | POI-jar ondersteunt al deze formaten |
twee | JXL API is voor het laatst bijgewerkt in het jaar 2009 | POI wordt regelmatig bijgewerkt en vrijgegeven |
3 | De JXL-documentatie is niet zo uitgebreid als die van POI | POI heeft een goed voorbereide en zeer uitgebreide documentatie |
4 | De JXL-API ondersteunt geen opmaak met opgemaakte tekst | POI API ondersteunt RTF-opmaak |
5 | JXL API is sneller dan POI API | POI API is langzamer dan JXL API |
Q # 47) Wat is het verschil tussen selenium en QTP?
Voorzien zijn van | Selenium | Snelle test professional (QTP) |
---|---|---|
Browser compatibiliteit | Selenium ondersteunt bijna alle populaire browsers zoals Firefox, Chrome, Safari, Internet Explorer, Opera enz | QTP ondersteunt Internet Explorer, Firefox en Chrome. QTP ondersteunt alleen het Windows-besturingssysteem |
Distributie | Selenium wordt gedistribueerd als een open source-tool en is gratis beschikbaar | QTP wordt gedistribueerd als een gelicentieerde tool en wordt gecommercialiseerd |
Toepassing wordt getest | Selenium ondersteunt het testen van alleen webgebaseerde applicaties | QTP ondersteunt het testen van zowel de webapplicatie als de Windows-applicatie |
Object-opslagplaats | Object Repository moet als een aparte entiteit worden aangemaakt | QTP maakt en onderhoudt automatisch Object Repository |
Taalondersteuning | Selenium ondersteunt meerdere programmeertalen zoals Java, C #, Ruby, Python, Perl enz | QTP ondersteunt alleen VB-script |
Ondersteuning van leveranciers | Omdat Selenium een gratis tool is, krijgt de gebruiker geen ondersteuning van de leverancier bij het oplossen van problemen | Gebruikers kunnen in geval van problemen gemakkelijk de ondersteuning van de leverancier krijgen |
Q # 48) Kan WebDriver mobiele applicaties testen?
WebDriver kan geen mobiele applicaties testen. WebDriver is een webgebaseerde testtool, daarom kunnen applicaties op de mobiele browsers worden getest.
Q # 49) Kan captcha worden geautomatiseerd?
Nee, captcha en barcodelezer kunnen niet worden geautomatiseerd.
V # 50) Wat is Object Repository? Hoe kunnen we een Object Repository in Selenium maken?
Object Repository is een term die wordt gebruikt om te verwijzen naar de verzameling webelementen die behoren tot Application Under Test (AUT), samen met hun locatorwaarden. Dus wanneer het element vereist is binnen het script, kan de locatorwaarde worden ingevuld vanuit de Object Repository. Object Repository wordt gebruikt om locators op een centrale locatie op te slaan in plaats van ze hard te coderen binnen de scripts.
In Selenium kunnen objecten worden opgeslagen in een Excel-sheet die indien nodig in het script kan worden ingevuld.
Dat is het voor nu.
Ik hoop dat je in dit artikel antwoorden zult vinden op de meest gestelde vragen over Selenium en WebDriver Interview. De antwoorden die hier worden gegeven, zijn ook nuttig voor het begrijpen van de basisprincipes van Selenium en geavanceerde WebDriver-onderwerpen.
Heb je Selenium Interview-vragen die hier niet worden beantwoord? Laat het ons weten in de reacties hieronder en we zullen proberen alles te beantwoorden.
=> Hiermee is niet alleen dit artikel voltooid, maar ook onze complete Selenium-trainingsreeks. Bekijk de lijst met ALLE 30+ tutorials op deze pagina Laat ons uw opmerkingen en vragen weten.
Aanbevolen literatuur
- Interview vragen en antwoorden
- Spock-interviewvragen met antwoorden (meest populair)
- Vragen en antwoorden over ETL-tests
- Cucumber Selenium Tutorial: Cucumber Java Selenium WebDriver Integration
- Selenium - Veelgestelde vragen
- Integratie van selenium met JMeter
- Inleiding tot Selenium WebDriver - Selenium Tutorial # 8
- Top 50 meest populaire CCNA interviewvragen en antwoorden