20 most popular testng interview questions
Nejčastěji kladené dotazy a odpovědi na rozhovor s příklady, které vám pomohou při přípravě:
Seznam nejoblíbenějších a nejčastěji kladených otázek a odpovědí na pohovory ohledně TestNG je vysvětlen zde v tomto článku.
Na příslušných místech jsou přidány jednoduché příklady pro snadné pochopení konceptu. Jsem si jist, že tyto otázky vám pomohou úspěšně prolomit jakýkoli rozhovor s TestNG.
Často kladené otázky týkající se rozhovorů s TestNG
Otázka č. 1) Co je TestNG?
Odpovědět: TestNG je rámec vytvořený pro provádění testů jednotek v programu Java vývojáři.
TestNG také používají softwaroví testeři k efektivnímu spouštění automatických testovacích skriptů vytvořených v Selenium Webdriver. Jeho plnou formou je rámec „Testování nové generace“.
Angularjs rozhovor otázky a odpovědi pro zkušené v .net
Je inspirován „JUnit“, což je další rámec pro jednotkové testování programů Java. Kromě všech funkcí v JUnit má TestNG své nové funkce, díky nimž je výkonnější.
Otázka 2) Jak nainstalujete TestNG do Eclipse?
Odpovědět:
Při instalaci TestNG na Eclipse postupujte podle následujících kroků:
- Přejít na Eclipse -> Klikněte na „Nápověda“ -> Klikněte na „Instalovat nový software“.
- Klikněte na tlačítko „Přidat“, do textového pole „Další“ zadejte název (nejlépe TestNG). Zadejte textové pole „Umístění“ a klikněte na akční tlačítko „OK“.
- Zaškrtněte políčko TestNG a klikněte na tlačítko akce „Další“. Spustí se instalace a po instalaci se Eclipse restartuje.
- Klikněte pravým tlačítkem na projekt v Eclipse -> Vyberte cestu sestavení -> Konfigurovat cestu sestavení.
- Vyberte kartu knihovna -> Klikněte na tlačítko Přidat knihovnu -> Vyberte TestNG-> Klikněte na Další -> Klikněte na Dokončit a použít a zavřít.
Otázka č. 3) Jak spustit skript TestNG?
Odpovědět:
Spuštění skriptu TestNG:
Klikněte pravým tlačítkem na třídu v Eclipse, klikněte na „Spustit jako“ a vyberte „TestNG test“.
NEBO
Přímo klikněte na tlačítko Spustit na panelu nástrojů Eclipse.
Otázka č. 4) Jaké jsou anotace použité v TestNG?
Odpovědět: V TestNG jsou tři části anotace:
i) Předběžné anotace: Tytojsou anotace TestNG, které jsou provedeny před testem.
Předběžné poznámky jsou @BeforeSuite, @BeforeClass, @BeforeTest, @BeforeMethod.
ii) Anotace zkoušky: Toto je anotace, která je zmíněna pouze před testovacím případem (Před metodou napsanou k provedení testovacího případu)
@ Test je anotace testu
(iii) Anotace postcondition: Jedná se o anotace, které se provedou po testovacím případu. (Poté, co je napsána metoda k provedení testovacího případu)
@AfterSuite, @AfterClass, @AfterTest, @AfterMethod jsou postkondiční anotace
Otázka č. 5) Jaká je sekvence provádění anotací v TestNG?
Odpovědět: Pořadí provedení anotací je následující:
@BeforeSuite @BeforeTest @BeforeClass @BeforeMethod @Test @AfterMethod @AfterClass @Aftertest @AfterSuite
Otázka č. 6) Jaké jsou výhody TestNG?
Odpovědět: Výhody TestNG jsou následující:
- Jedná se o framework s otevřeným zdrojovým kódem, a proto je snadné jej konfigurovat.
- Pomocí TestNG můžeme systematicky vytvářet testovací případy.
- Poskytuje spoustu poznámek, což zase usnadňuje vytváření testovacích případů.
- Pomocí TestNG lze definovat priority testů a pořadí provádění.
- Seskupení je možné pomocí TestNG.
- Generuje zprávy ve formátu HTML (Selenium Webdriver nemůže generovat protokoly o zkouškách sám, pomáhá to SW).
- Parametrizace dat je možná pomocí TestNG.
- Kromě všech funkcí JUnit má TestNG své funkce, díky nimž je výkonnější.
Otázka č. 7) Jak nastavit priority v TestNG?
Odpovědět: Ve třídě je vždy více než jeden test nebo metoda. Pokud tyto testy nebo metody neupřednostňujeme, jsou metody vybrány abecedně a provedeny při provádění.
Pokud chceme testy spustit v pořadí, které chceme, musíme nastavit prioritu spolu s anotací @Test.
To lze provést následovně:
@Test (priorita = 1), @Test (priorita = 2)
Zvažte následující příklad:
@Test (priority=2) public void getText() { driver.findElement(By.id(“id”)).getText(); } @Test(priority=1) public void clickelement() { driver.findElement(By.id(“id”)).click(); }
Ve výše uvedeném příkladu se nejprve provede clickelement (), protože priorita je nastavena na 1.
A getText () bude spuštěn po clickelement (), protože jeho priorita je nastavena na 2.
Otázka č. 8) Jak sdílet zprávu o projektu pomocí TestNG?
Odpovědět: Existuje několik způsobů, jak toho dosáhnout:
(i) Po provedení třídy TestNG se vedle konzoly vygeneruje jedna záložka s názvem „Výsledek běžící třídy“.
Můžeme to zkopírovat a sdílet.
ii) Po provedení třídy TestNG
- Klikněte pravým tlačítkem na název projektu a obnovte jej
- Klikněte na složku „Test-výstup“
- Klikněte pravým tlačítkem na soubor „index.html“ a vyberte vlastnosti
- Zkopírujte odkaz vedle „Místo“
Tento odkaz můžeme sdílet, abychom viděli základní testovací protokol HTML, který je generován TestNG.
Toto je soubor, který se na vašem počítači generuje automaticky po provedení třídy pomocí TestNG.
Otázka č. 9) Jak definujete seskupování v TestNG?
Odpovědět: Seskupení v TestNG můžeme definovat pomocí atributu groups, jak je uvedeno níže:
@Test (groups = ”title”)
Otázka č. 10) Co je závislost na TestNG?
Odpovědět: Existuje několik metod, na kterých závisí mnoho metod.
Například, Pokud chceme otestovat libovolnou aplikaci a pokud přihlašovací stránka aplikace nefunguje, nebudeme moci otestovat ostatní scénáře.
LoginTest je tedy metoda, na které závisí mnoho testů.
Proto budeme psát takto:
@Test(dependsOnMethods=”LoginTest”) Public void homePageLaunched() { }
Výše uvedený kód ukazuje, že metoda homePageLaunched () je zcela závislá na metodě LoginTest ().
Pokud je předán LoginTest (), bude provedena pouze metoda homePageLaunched ()
Otázka č. 11) Co je InvocationCount v TestNG?
Odpovědět: Pokud chceme provést testovací případ „n“ několikrát, můžeme použít atribut invocationCount, jak je znázorněno v následujícím příkladu.
Příklad:
@Test(invocationCount=8) Public void print() { }
Ve výše uvedeném příkladu bude metoda print () spuštěna 8krát.
Otázka č. 12) Co je timeOut v TestNG?
Odpovědět: Pokud některá metoda ve skriptu trvá dlouho, pak ji můžeme ukončit pomocí „timeout“ v TestNG.
@Test (časový limit = 5000)
V tomto případě bude metoda ukončena za 5 000 ms (5 sekund) a testovací případ je označen jako „Selhalo“.
Otázka č. 13) Jak zacházet s výjimkami v TestNG?
Odpovědět: Pokud existují některé metody, od kterých očekáváme určité výjimky, pak můžeme zmínit výjimku v anotaci @Test, aby testovací případ neselhal.
Příklad: Pokud se od metody očekává, že bude mít výjimku „numberFormatException“, testovací případ kvůli této výjimce selže, pokud není zadán žádný blok try-catch.
Ale můžeme to udělat v TestNG pomocí atributu “expectException” následujícím způsobem.
@Test (expectException = numberFormatException.class)
Potom bude testovací případ spuštěn bez selhání.
Otázka č. 14) Jaká jsou běžná tvrzení TestNG?
Odpovědět: Mezi běžné tvrzení TestNG patří:
(i) Assert.assetEquals (řetězec aktuální, řetězec očekávaný);
- Přijímá dva řetězce.
- Pokud jsou oba řetězce stejné, testovací případ se provede úspěšně, jinak testovací případ selže.
ii) Assert.assertEquals (řetězec aktuální, řetězec očekávaný, zpráva řetězce)
- Přijímá dva řetězce.
- Pokud jsou oba řetězce stejné, testovací případ se provede úspěšně, jinak testovací případ selže.
- Zpráva se vytiskne, pokud testovací případ selže.
(iii) Assert.assertEquals (booleovský skutečný, booleovský očekávaný)
- Přijímá dvě booleovské hodnoty.
- Pokud jsou obě logické hodnoty stejné, testovací případ se provede úspěšně, jinak testovací případ selže.
(iv) Assert.assertTrue ()
- Přijímá booleovskou hodnotu.
- Tvrzení projde, pokud je podmínka True, jinak se zobrazí chyba tvrzení.
(proti) Assert.assertFalse ()
- Přijímá booleovskou hodnotu.
- Pokud je podmínka False, tvrzení projde, jinak se zobrazí chyba tvrzení.
(my) Assert.assertTrue (, zpráva)
- Přijímá booleovskou hodnotu.
- Tvrzení projde, pokud je podmínka True, jinak se u uvedené zprávy zobrazí chyba tvrzení.
(příjdeš) Assert.assertFalse (, zpráva)
- Přijímá booleovskou hodnotu.
- Tvrzení projde, pokud je podmínka False, jinak se u uvedené zprávy zobrazí chyba tvrzení.
Otázka č. 15) Jak zakázat test v TestNG?
Odpovědět:
Chcete-li deaktivovat test v TestNG, musíme použít atribut „enabled“ následovně:
@Test (enabled = ”false”)
Otázka č. 16) Jaké jsou typy Asserts v TestNG?
Odpovědět: K ověření výsledků (úspěšné / neúspěšné) musíme použít tvrzení.
V TestNG existují dva typy uplatnění:
(i) Tvrdé prosazení:
Hard Assert je normální assert, který se používá k ověření ve třídě TestNG.
Pro tvrdé prosazení musíme použít třídu Assert takto:
Assert.assertEquals (skutečná hodnota, očekávaná hodnota);
Pokud hard assert selže, nebude po příkazu assert spuštěn žádný z kódů.
ii) Soft Assert:
Pokud chceme pokračovat v provádění testu i po selhání příkazu assert, musíme použít soft assert.
Chcete-li vytvořit soft assert, musíme vytvořit objekt třídy „softAssert“ následovně:
softAssert sassert = nový softAssert ();
sassert.assertAll ();
Takže pokud testovací případ selže, provádění se neukončí, když použijeme soft assert.
Otázka č. 17) Jak předat parametr v testovacím případě prostřednictvím souboru testng.xml?
Odpovědět: Pokud máme třídu, ve které je definována metoda přihlášení, můžeme předat parametry přihlášení této metodě přihlášení ze souboru testování.xml
Budeme muset použít anotaci „@parameters“ následovně:
@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); }
Nyní přejděte do souboru testng.xml a zadejte tam parametry následovně:
anime tv vše zdarma pro vás
“suitename” > ”testname” > ”user_name” value= ”user1” /> ”password” value = ”pass1” /> ”passingparameters” />
Otázka č. 18) Co je potřeba k vytvoření souboru testng.xml?
Odpovědět: Když testujeme projekt pomocí Selenium Webdriver, má spoustu tříd. Tyto třídy nemůžeme zvolit jeden po druhém a dát je k automatizaci. Proto musíme vytvořit sadu, aby všechny třídy fungovaly v jedné testovací sadě.
Můžeme toho dosáhnout vytvořením souboru testing.xml.
Otázka č. 19) Jak vytvořit soubor XML v TestNG?
Odpovědět: Přejděte do složky src -> klikněte na soubor -> zadejte název souboru (většinou napsaný testovací.xml)
Poté klikněte na dokončení.
Máme prázdný soubor XML. Zde musíme zmínit název projektu a třídy, které mají být provedeny, spolu s názvem balíčku, jak je uvedeno níže.
'Testing project' > 'testing feature 1' > 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' />
Chcete-li spustit tento soubor, musíme přejít na testng.xml v Průzkumníku balíků pravým tlačítkem myši a spustit jako -> Sada TestNG
Otázka č. 20) Jak vyvolat výjimku SKIP v TestNG?
Odpovědět: Pokud chceme přeskočit jakýkoli Test pomocí testování, musíme použít výjimku SKIP v TestNG.
Je napsán následovně:
public void skipExc() { System.out.println('SKIP me'); throw new skipException(“Skipping skipExc”); } }
Přejeme vám vše nejlepší k rozhovoru !!
Doporučené čtení
- Dotazy a odpovědi na pohovor
- Spock Interview Otázky s odpověďmi (nejoblíbenější)
- Top 20+ .NET Interview Otázky a odpovědi
- ETL Testing Interview Otázky a odpovědi
- Top 20 nejdůležitějších API testů Interview Otázky a odpovědi
- Top 30+ populárních otázek a odpovědí na rozhovor s okurkou
- Top 50 nejoblíbenějších dotazů a odpovědí na rozhovor s CCNA
- Top 40 populárních dotazů a odpovědí na rozhovor s J2EE, které byste si měli přečíst