Topp 19 TestNG-intervjufrågor och svar (2025)
Här är TestNG-intervjufrågor och svar för nybörjare såväl som erfarna kandidater för att få sitt drömjobb.
1) Vad är TestNG?
TestNG är ett automatiserat testramverk med öppen källkod. Den är baserad på JUnit-ramverket men är inte en JUnit-tillägg.
Gratis PDF-nedladdning: TestNG-intervjufrågor
2) Vilka är TestNG-funktionerna?
TestNG funktioner inkluderar
- TestNG använder fler OO (objektorienterade) och Java-funktioner
- Den stöder testning av integrerade klasser
- Olika anteckningar stöds
- Separat kompileringstidstestkod från datainfo/körtidskonfiguration
- Körtidskonfigurationen är flexibel
- Flexibel plug-in API
- För ytterligare flexibilitet bäddar in BeanShell
- Flertrådigt selenteststöd
- Stöder parallell testning, lasttestning, partiellt fel, beroende testmetoder
- Efter sammanställning av test kan en begäran göras till TestNG om att köra alla "front-end"-test eller "långsamma", "snabb", "databas"
- För samma testklass TestNG-stöd för flera instanser
- För loggning, inga beroenden, standard JDK-funktioner för loggning och körning
3) Lista ut fördelarna med TestNG framför Junit?
Fördelar med TestNG över JUnit inkluderar
- Jämför med JUnit-kommentarer, TestNG är lätta att förstå
- Till skillnad från JUnit kräver TestNG inte att deklarera @Before Class och @After Class
- Metodnamnsbegränsning finns inte i TestNG
- TestNG låter dig enkelt gruppera testfall, vilket inte är möjligt i JUnit
- TestNG stöder följande tre ytterligare inställningar: @Before/After Suite, @Before/After Test och @Before/After Group
- TestNG behöver inte utöka någon klass
- I TestNG är det möjligt att köra testfall för selenwebbdrivrutiner parallellt
- Baserat på grupp TestNG låter dig utföra testfallen
- TestNG låter dig bestämma de beroende testfallen; varje testfall är autonomt till ett annat testfall
4) Vilka är de grundläggande stegen som krävs för att skriva TestNG-tester?
De grundläggande stegen som krävs för att skriva TestNG inkluderar
- Skriv ner affärslogiken för ditt test och infoga TestNG-kommentarer i din kod
- I ett bygge.xml eller testing.xml, lägg till informationen om ditt test
- Kör TestNG
5) Lista ut olika sätt på vilka TestNG kan anropas.
TestNG kan anropas på olika sätt som
- Använda Eclipse
- Med myra
- Från kommandoraden
- Använder IntelliJs IDEA
6) Förklara användningen av filen testng.xml
Filen testing.xml fångar hela din testning i XML. Den här filen gör det enkelt att definiera alla dina testsviter och deras parametrar i en fil, som du kan verifiera i ditt kodlager eller skicka e-post till kollegor. Det gör det också enkelt att ta ut delmängder av dina tester eller dela upp flera körtidskonfigurationer.
7) Hur kan du inaktivera ett test i TestNG?
För att inaktivera testfallet du inte vill ha kan du använda kommentarer @Test(enabled = false).
8) Vad är Time-Out-test i TestNG?
Time-Out-testet i TestNG är inget annat än den tid som tilldelats för att utföra enhetstestning. Om enhetstestet inte slutförs inom den specifika tidsgränsen kommer TestNG att överge ytterligare programvarutestning och markera det som ett misslyckande.
9) Förklara undantagstest
TestNG ger möjlighet att spåra undantagshanteringen av kod. Du kan testa om en kod ger de förväntade resultaten eller inte. Den förväntade Exceptions-parametern används tillsammans med @Test-kommentaren.
10) Vad gör "svittestet" i TestNG?
"Svittest" görs när du måste köra några enhetstester tillsammans, "Svittest" kombinerar detta enhetsteste. En XML-fil används för att köra svittestet.
11) Vad är parametriserad testning?
Parameteriserad testning tillåter utvecklare att utföra samma test om och om igen med olika värden. På två olika sätt låter TestNG dig skicka parametrar direkt till dina testmetoder.
- Med testing.xml
- Med dataleverantörer
12) Hur kan du köra JUnit-testerna med TestNG?
Du kan köra JUnit-testerna med TestNG by
- Placera JUnit-biblioteket på TestNG-klassvägen så att det kan lokalisera och använda JUnit-klasser
- Ändra din testlöpare från JUnit till TestNG i Ant och kör sedan TestNG i "blandat läge". Detta kommer att samla alla dina tester
Detta tillvägagångssätt gör det också möjligt för dig att konvertera ditt befintliga JUnit-test till TestNG.
13) Vad indikerar @Test(invocationCount=?) och (threadPoolSize=?)?
- @Test (threadPoolSize=?): ThreadPoolSize-attributen talar om för TestNG att bilda en trådpool för att köra testmetoden genom flera trådar. Med en trådpool minskar testmetodens gångtid avsevärt.
- @Test(invocationCount=?): Antalet anrop talar om hur många gånger TestNG ska köra denna testmetod
14) På vilka olika sätt kan du skapa rapporter för TestNG-resultat?
Det finns två sätt att producera en rapport med Test NG, de är
- Lyssnare: För att en lyssnarklass ska kunna implementeras måste klassen implementera org.testng./TestListener Interface. Dessa klasser informeras vid körning av TestNG när testet börjar, slutar, hoppar över, godkänns eller misslyckas.
- Reportrar: För att en rapporteringsklass ska kunna implementeras måste klassen implementera ett org.testng/Reporter-gränssnitt. När hela sviten slutar kallas dessa klasser. När det anropas levereras objektet som består av informationen från hela testkörningen till denna klass.
15) Vad är grupptest i TestNG?
Det är en ny funktion som ingår i TestNG; det låter dig skicka metoder i rätt delar och utföra gruppering av testmetoder. Med grupptest kan du inte bara deklarera metoder som tillhör grupper, utan du kan även ange testgrupper som innehåller andra grupper. Grupper bestäms i din testing.xml-fil med hjälp av grupptestet.
16) Vilka är sätten att tillåta att TestNG låter dig specificera beroenden?
TestNG låter dig specificera beroenden på två sätt
- Att använda attribut beror på Metoder i @Test-kommentarer
- Att använda attribut beror på grupper i @Test-kommentarer
17) Vad betyder det när du måste skicka parametrar med hjälp av dataleverantörer i TestNG?
När du måste skicka komplexa parametrar eller parametrar som ska skapas från Java, kan i sådana fall parametrar skickas med hjälp av dataleverantörer. Anteckningen för dataleverantören är @DataProvider. Den här anteckningen har bara ett enda strängattribut om namnet inte deklareras; Dataleverantörens namn används automatiskt till metodens namn. En dataleverantör ger tillbaka en array av föremål.
18) Nämn olika metoder för att utföra tester i TestNG?
Testerna i TestNG körs med klassen TestNG. För att köra tester i TestNG-testramverket är klassen den huvudsakliga ingångspunkten. Användare kan göra sitt TestNG-objekt och anropa det på många olika sätt som
- På en redan befintlig testing.xml
- På en syntetisk testing.xml skapad helt från Java
- Genom att direkt ställa in testklasserna
19) Ge exempel på TestNG-kod
package firsttestngpackage; import org.openqa.selenium.*; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.*; public class firsttestngfile { public String baseUrl = "http://demo.guru99.com/test/newtours/"; String driverPath = "C:\\geckodriver.exe"; public WebDriver driver ; @Test public void verifyHomepageTitle() { System.out.println("launching firefox browser"); System.setProperty("webdriver.firefox.marionette", driverPath); driver = new FirefoxDriver(); driver.get(baseUrl); String expectedTitle = "Welcome: Mercury Tours"; String actualTitle = driver.getTitle(); Assert.assertEquals(actualTitle, expectedTitle); driver.close(); } }
Dessa intervjufrågor kommer också att hjälpa dig i din viva (orals)
Bra för att förbereda sig för intervjuer
I fråga nr 6 har du skrivit testing.xml istället för testng.xml
Tack … detta är rättat
Första raden i den tredje frågan bör vara "Fördelar med TestNG över JUnit inkluderar".
Tack för frågorna.
Fel fixat!
11) Vad är parametrisk testning? Det borde vara Vad är parametriserad testning?
Hej, tack för att du skrev. Den granskas och uppdateras.