20 most popular testng interview questions
Najčešća pitanja i odgovori na intervju za TestNG s primjerima koji će vam pomoći u pripremi:
Popis najpopularnijih i najčešće postavljanih pitanja i odgovora na razgovoru za TestNG objašnjeni su ovdje u ovom članku.
Na dotična mjesta dodaju se jednostavni primjeri radi lakšeg razumijevanja koncepta. Siguran sam da bi vam ova pitanja pomogla da uspješno razbijete bilo koji intervju s TestNG-om.
Često postavljana pitanja za intervju za TestNG
P # 1) Što je TestNG?
Odgovor: TestNG je okvir koji su programeri stvorili za izvršavanje jediničnih testova u java programu.
TestNG također koriste softverski testeri za učinkovito pokretanje automatiziranih testnih skripti stvorenih u Selenium Webdriver. Njegov puni oblik je okvir 'Testiranje nove generacije'.
youtube to mp3 converter aplikacija za besplatno preuzimanje
Inspiriran je 'JUnit' -om, koji je još jedan okvir za jedinično testiranje Java programa. Uz sve značajke u JUnit-u, TestNG ima i nove značajke koje ga čine moćnijim.
P # 2) Kako ćete instalirati TestNG u Eclipse?
Odgovor:
Slijedite korake u nastavku da biste instalirali TestNG na Eclipse:
- Idite na Eclipse -> Kliknite 'Pomoć' -> Kliknite 'Instaliraj novi softver'.
- Kliknite gumb 'Dodaj', unesite ime (po mogućnosti TestNG) u tekstni okvir 'Dalje'. Unesite u tekstni okvir 'Location' i kliknite na akcijski gumb 'OK'.
- Označite potvrdni okvir TestNG i kliknite akcijski gumb 'Dalje'. Instalacija će započeti, a Eclipse će se ponovno pokrenuti nakon instalacije.
- Desnom tipkom miša kliknite projekt u Eclipseu -> Odabir puta gradnje -> Konfiguriranje puta gradnje.
- Odaberite karticu knjižnice -> Kliknite gumb Dodaj knjižnicu -> Odaberite TestNG-> Kliknite Dalje -> Kliknite Završi i Primjeni i zatvori.
P # 3) Kako pokrenuti TestNG skriptu?
Odgovor:
Da biste pokrenuli testNG skriptu:
Desnom tipkom miša kliknite klasu u Eclipseu, kliknite na 'Pokreni kao' i odaberite 'TestNG test'.
ILI
Izravno kliknite gumb Pokreni na alatnoj traci Eclipsea.
P # 4) Koje su napomene korištene u TestNG-u?
Odgovor: U TestNG-u postoje tri odjeljka napomena:
(i) Napomene o preduvjetima: Ovisu napomene TestNG koje se izvršavaju prije testa.
@BeforeSuite, @BeforeClass, @BeforeTest, @BeforeMethod su bilješke preduvjeta.
(ii) Oznaka testa: Ovo je napomena koja se spominje samo prije testnog slučaja (Prije metode napisane za izvršavanje testnog slučaja)
@Test je testna napomena
(iii) Napomena o postkondiciji: To su napomene koje se izvršavaju nakon testnog slučaja. (Nakon što je metoda napisana za izvršavanje testnog slučaja)
@AfterSuite, @AfterClass, @AfterTest, @AfterMethod su napomene postkondicije
P # 5) Koji je slijed izvršavanja napomena u TestNG-u?
Odgovor: Slijed izvršavanja napomena je sljedeći:
@BeforeSuite @BeforeTest @BeforeClass @BeforeMethod @Test @AfterMethod @AfterClass @Aftertest @AfterSuiteP # 6) Koje su prednosti TestNG-a?
Odgovor: Prednosti TestNG-a su sljedeće:
- To je okvir otvorenog koda, stoga ga je lako konfigurirati.
- Korištenjem TestNG-a možemo sustavno stvarati test slučajeve.
- Daje puno napomena što zauzvrat olakšava stvaranje testnog slučaja.
- Korištenjem TestNG-a mogu se definirati prioriteti testova i redoslijed izvođenja.
- Grupiranje je moguće pomoću TestNG-a.
- Generira HTML izvješća (Selenium Webdriver ne može sam generirati izvješća o testiranju, pomaže SW-u da to postigne).
- Parametriranje podataka je moguće pomoću TestNG-a.
- Uz sve funkcionalnosti JUnit-a, TestNG ima i svoje funkcionalnosti, što ga pak čini moćnijim.
P # 7) Kako postaviti prioritete u TestNG-u?
Odgovor: U razredu uvijek postoji više testova ili metoda. Ako tim testovima ili metodama ne odredimo prioritet, metode se odabiru abecedno i izvršavaju tijekom izvršavanja.
Ako želimo pokretati testove u slijedu koji želimo, tada moramo postaviti prioritet zajedno s oznakom @Test.
To se može učiniti na sljedeći način:
@Test (prioritet = 1), @Test (prioritet = 2)
Razmotrite sljedeći primjer:
@Test (priority=2) public void getText() { driver.findElement(By.id(“id”)).getText(); } @Test(priority=1) public void clickelement() { driver.findElement(By.id(“id”)).click(); }U gornjem primjeru prvo će se izvršiti clickkelement () jer je prioritet postavljen na 1.
A getText () izvršit će se nakon clickkelement () jer je njegov prioritet postavljen na 2.
P # 8) Kako podijeliti izvještaj o projektu pomoću TestNG-a?
Odgovor: To možete učiniti na nekoliko načina:
(i) Nakon izvršenja klase TestNG, postoji jedna kartica nazvana „Rezultat pokrenute klase“ koja se generira pored konzole.
Ovo možemo kopirati i podijeliti.
(ii) Nakon izvršenja klase TestNG,
- Desnom tipkom miša kliknite naziv projekta i osvježite
- Kliknite mapu 'Test-output'
- Desnom tipkom miša kliknite datoteku 'index.html' i odaberite svojstva
- Kopirajte vezu pored 'Lokacija'
Ovu vezu možemo podijeliti kako bismo vidjeli osnovno izvješće o HTML ispitivanju koje generira TestNG.
Ovo je datoteka koja se automatski generira na vašem računalu nakon izvršavanja klase pomoću TestNG-a.
P # 9) Kako ćete definirati grupiranje u TestNG-u?
Odgovor: Grupiranje u TestNG-u možemo definirati pomoću atributa groups kako je prikazano dolje:
@Test (grupe = ”naslov”)
P # 10) Što je ovisnost o TestNG-u?
Odgovor: Postoje neke metode o kojima ovise mnoge metode.
Na primjer, Ako želimo testirati bilo koju aplikaciju i ako stranica za prijavu aplikacije ne radi, nećemo moći testirati ostatak scenarija.
Dakle, LoginTest je metoda o kojoj ovise mnogi testovi.
Stoga ćemo napisati kako slijedi:
@Test(dependsOnMethods=”LoginTest”) Public void homePageLaunched() { }Gornji kod pokazuje da metoda homePageLaunched () u potpunosti ovisi o metodi LoginTest ().
Ako se prijavi LoginTest (), izvršava se samo metoda homePageLaunched ()
P # 11) Što je InvocationCount u TestNG-u?
Odgovor: Ako želimo izvršiti test slučaj „n“ puta, tada možemo koristiti atribut invocationCount kao što je prikazano u donjem primjeru.
Primjer:
@Test(invocationCount=8) Public void print() { }U gornjem primjeru metoda print () izvršit će se 8 puta.
P # 12) Što je timeOut u TestNG-u?
Odgovor: Ako se bilo kojoj metodi u skripti treba dugo vremena za izvršavanje, tada je možemo prekinuti pomoću metode 'timeout' u TestNG.
@Test (timeout = 5000)
U ovom slučaju, metoda će se prekinuti za 5000 ms (5 sekundi), a test slučaj će biti označen kao 'Nije uspjelo'.
P # 13) Kako postupati s iznimkama u TestNG-u?
Odgovor: Ako postoje neke metode od kojih očekujemo neke iznimke, tada možemo spomenuti iznimku u bilješci @Test kako test slučaj ne bi propao.
Primjer: Ako se očekuje da metoda ima iznimku “numberFormatException”, tada testni slučaj neće uspjeti zbog ove iznimke ako nije naveden blok try-catch.
Ali to možemo učiniti u TestNG-u pomoću atributa 'očekivani izuzetak' kako slijedi.
@Test (očekuje seException = numberFormatException.class)
Tada će se test slučaj pokrenuti bez neuspjeha.
P # 14) Koje su uobičajene tvrdnje o TestNG-u?
Odgovor: Uobičajene tvrdnje TestNG-a uključuju:
(i) Assert.assetEquals (Stvarni niz, očekivani niz);
- Prihvaća dvije žice.
- Ako su oba niza jednaka, test slučaj se uspješno izvršava, inače test slučaj ne uspije.
(ii) Assert.assertEquals (Stvarni niz, očekivani niz, niska poruka)
- Prihvaća dvije žice.
- Ako su oba niza jednaka, test slučaj se uspješno izvršava, inače test slučaj ne uspije.
- Poruka se ispisuje ako test slučaj ne uspije.
(iii) Assert.assertEquals (stvarna logička vrijednost, očekivana logička vrijednost)
- Prihvaća dvije logičke vrijednosti.
- Ako su obje logičke vrijednosti jednake, test slučaj se uspješno izvršava, inače test slučaj ne uspije.
(iv) Assert.assertTrue ()
- Prihvaća logičku vrijednost.
- Tvrdnja prolazi ako je uvjet Tačno, inače se prikazuje pogreška tvrdnje.
(v) Assert.assertFalse ()
- Prihvaća logičku vrijednost.
- Tvrdnja prolazi ako je uvjet False, inače se prikazuje pogreška tvrdnje.
(mi) Assert.assertTrue (, poruka)
- Prihvaća logičku vrijednost.
- Tvrdnja prolazi ako je uvjet Tačno, inače se uz spomenutu poruku prikazuje pogreška tvrdnje.
(dolaziš li) Assert.assertFalse (, poruka)
- Prihvaća logičku vrijednost.
- Tvrdnja prolazi ako je uvjet False, inače se prikazuje pogreška tvrdnje sa spomenutom porukom.
P # 15) Kako onemogućiti test u TestNG-u?
Odgovor:
Da bismo onemogućili test u TestNG-u, moramo koristiti atribut 'enabled' kako slijedi:
@Test (omogućeno = 'false')
P # 16) Koje su vrste potvrda u TestNG-u?
Odgovor: Da bismo provjerili rezultate (prolaz / neuspjeh), moramo se koristiti tvrdnjom.
Postoje dvije vrste tvrdnji u TestNG-u:
(i) Tvrda tvrdnja:
Hard Assert je uobičajeno tvrđenje koje se koristi za provjeru valjanosti u klasi TestNG.
Klasu Assert moramo koristiti za tvrdu tvrdnju kako slijedi:
Assert.assertEquals (stvarna vrijednost, očekivana vrijednost);
što je dvostruka varijabla u javi
Ako tvrda tvrdnja ne uspije, tada se nijedan kôd ne izvršava nakon izraza assert.
(ii) meko potvrđivanje:
Ako želimo nastaviti s izvršavanjem testa čak i nakon što izjava o potvrđivanju ne uspije, tada moramo koristiti soft assert.
Da biste stvorili meku tvrdnju, moramo stvoriti objekt klase “softAssert” kako slijedi:
softAssert sassert = novi softAssert ();
sassert.assertAll ();
Dakle, ako test slučaj ne uspije, izvršenje se ne prekida kada koristimo soft assert.
P # 17) Kako proslijediti parametar u testnom slučaju kroz datoteku testng.xml?
Odgovor: Ako imamo klasu u kojoj je definirana metoda prijave, tada parametre prijave možemo proslijediti na ovu metodu prijave iz datoteke testing.xml
Morat ćemo upotrijebiti bilješku “@parameters” kako slijedi:
@Parameters({'user_name','password'}) @Test public void loginapp() { driverget(“appname”); driver.findElement(By.id(“login”)).sendkeys(user_name); driver.findElement(By.id(“password”)).sendkeys(password); }Sada idite na datoteku testng.xml i tamo unesite parametre kako slijedi:
“suitename” > ”testname” > ”user_name” value= ”user1” /> ”password” value = ”pass1” /> ”passingparameters” /> P # 18) Koja je potreba za stvaranjem datoteke testng.xml?
Odgovor: Kada testiramo projekt pomoću Selenium Webdriver, on ima puno predavanja. Ne možemo odabrati te razrede jednu po jednu i staviti ih za automatizaciju. Stoga moramo stvoriti paket tako da se sve klase izvode u jednom testnom paketu.
To možemo postići stvaranjem datoteke testing.xml.
P # 19) Kako stvoriti XML datoteku u TestNG-u?
Odgovor: Idite u mapu src -> kliknite datoteku -> unesite ime datoteke (uglavnom napisano testing.xml)
Zatim, kliknite na Finish.
Imamo praznu XML datoteku. Ovdje moramo spomenuti naziv projekta i klase koje ćemo izvesti zajedno s nazivom paketa kao što je prikazano u nastavku.
'Testing project' > 'testing feature 1' > 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' /> Da bismo pokrenuli ovu datoteku, moramo kliknuti desni klik na testng.xml u istraživaču paketa i pokrenuti kao -> TestNG suite
P # 20) Kako baciti SKIP izuzetak u TestNG?
Odgovor: Ako želimo preskočiti bilo koji test pomoću testiranja, tada moramo koristiti SKIP iznimku u TestNG-u.
Napisano je kako slijedi:
public void skipExc() { System.out.println('SKIP me'); throw new skipException(“Skipping skipExc”); } }Želimo vam sve najbolje za vaš intervju !!
Preporučena literatura
- Intervjuirajte pitanja i odgovore
- Spock intervju pitanja s odgovorima (najpopularnije)
- Top 20+ .NET intervjua s pitanjima i odgovorima
- Pitanja i odgovori za ispitivanje ETL-a
- 20 najvažnijih pitanja i odgovora za ispitivanje API ispitivanja
- Top 30+ popularnih pitanja i odgovora za intervju s krastavcima
- Top 50 najpopularnijih pitanja i odgovora za CCNA intervjue
- 40 najpopularnijih pitanja i odgovora za J2EE intervjue koje biste trebali pročitati