TestNG:n haastattelun 19 parasta kysymystä ja vastausta (2025)

Tässä TestNG:n haastattelukysymyksiä ja vastauksia niin fuksilaisille kuin kokeneille hakijoille unelmatyönsä saamiseen.


1) Mikä on TestNG?

TestNG on automatisoitu avoimen lähdekoodin testauskehys. Se perustuu JUnit-kehykseen, mutta ei ole JUnit-laajennus.

 

Ilmainen PDF-lataus: TestNG-haastattelukysymykset


2) Mitkä ovat TestNG:n ominaisuudet?

TestNG:n ominaisuuksia ovat mm

  • TestNG käyttää enemmän OO- (olio-)- ja Java-ominaisuuksia
  • Se tukee integroitujen luokkien testausta
  • Erilaisia ​​huomautuksia tuetaan
  • Erillinen käännösaikatestikoodi datatiedoista/ajoajan määrityksistä
  • Ajonaikainen konfigurointi on joustava
  • Joustava laajennus API
  • Lisää joustavuutta upottaa BeanShell
  • Monisäikeinen seleenitestauksen tuki
  • Tukee rinnakkaistestausta, kuormitustestausta, osittaista vikaa, riippuvaisia ​​testimenetelmiä
  • Testin laatimisen jälkeen TestNG:lle voidaan pyytää suorittamaan kaikki "etuosa" -testit tai "hidas", "nopea", "tietokanta",
  • Samalle testiluokalle TestNG-tuki useille esiintymille
  • Kirjaamiseen, ei riippuvuuksia, oletus JDK-toiminnot kirjaamiseen ja ajon aikana

3) Luettele TestNG:n edut Junitiin verrattuna?

TestNG:n edut JUnitiin verrattuna sisältävät

  • Verrattuna JUnit-merkintöihin, TestNG on helppo ymmärtää
  • Toisin kuin JUnit, TestNG ei vaadi ilmoittamista @Before Class ja @After Class
  • TestNG:ssä ei ole menetelmän nimen rajoitusta
  • TestNG mahdollistaa testitapausten ryhmittelyn helposti, mikä ei ole mahdollista JUnitissa
  • TestNG tukee seuraavia kolmea lisäasetusta: @Before/After Suite, @Before/After Test ja @Before/After Group
  • TestNG:n ei tarvitse laajentaa mitään luokkaa
  • TestNG:ssä on mahdollista ajaa seleeniverkkoajurien testitapauksia rinnakkain
  • Ryhmään perustuen TestNG mahdollistaa testitapausten suorittamisen
  • TestNG:n avulla voit määrittää riippuvat testitapaukset; jokainen testitapaus on riippumaton toisesta testitapauksesta

4) Mitkä ovat TestNG-testien kirjoittamisen perusvaiheet?

TestNG:n kirjoittamiseen vaadittavat perusvaiheet sisältävät

  • Kirjoita testisi liiketoimintalogiikka muistiin ja lisää TestNG-merkinnät koodiisi
  • Rakenteessa.xml tai testing.xml, lisää testin tiedot
  • Suorita TestNG

5) Listaa erilaisia ​​tapoja, joilla TestNG:tä voidaan kutsua.

TestNG:tä voidaan kutsua eri tavoin, kuten

  • Käyttäminen Eclipse
  • Muurahaisen kanssa
  • Komentoriviltä
  • IntelliJ:n IDEA käyttäminen
TestNG-haastattelukysymykset
TestNG-haastattelukysymykset

6) Selitä testng.xml-tiedoston käyttö

Tiedosto testing.xml tallentaa koko testauksen XML-muodossa. Tämän tiedoston avulla on helppo määrittää kaikki testipakettisi ja niiden parametrit yhteen tiedostoon, jonka voit tarkistaa koodivarastostasi tai lähettää sähköpostia työtovereillesi. Sen avulla on myös helppo vetää ulos testien osajoukkoja tai jakaa useita ajonaikaisia ​​kokoonpanoja.


7) Kuinka voit poistaa testin käytöstä TestNG:ssä?

Voit poistaa testin käytöstä, jota et halua, käyttämällä huomautuksia @Test(enabled = false).


8) Mikä on aikakatkaisutesti TestNG:ssä?

TestNG:n aikakatkaisutesti on vain yksikkötestauksen suorittamiseen varattu aika. Jos yksikkötesti ei pääty kyseisessä määräajassa, TestNG hylkää ohjelmiston lisätestauksen ja merkitsee sen epäonnistuneeksi.


9) Selitä poikkeustesti

TestNG tarjoaa mahdollisuuden jäljittää koodin poikkeusten käsittelyä. Voit testata, tuottaako koodi odotettuja tuloksia vai ei. Odotettuja poikkeuksia -parametria käytetään yhdessä @Test-annotaation kanssa.


10) Mitä "sarjatesti" tekee TestNG:ssä?

”Suite Test” tehdään, kun sinun on suoritettava useita yksikkötestejä yhdessä. ”Suite Test” niputtaa nämä yksikkötestit yhteen. Suorituskykytestin suorittamiseen käytetään XML-tiedostoa.

TestiNG
TestiNG

11) Mitä on parametroitu testaus?

Parametrisoitu testaus antaa kehittäjille mahdollisuuden suorittaa saman testin yhä uudelleen ja uudelleen käyttäen eri arvoja. TestNG antaa sinun välittää parametrit suoraan testimetodeillesi kahdella eri tavalla.

  • Testing.xml:llä
  • Tiedontarjoajien kanssa

12) Kuinka voit suorittaa JUnit-testejä TestNG:n avulla?

Voit suorittaa JUnit-testejä käyttämällä TestNG by

  • JUnit-kirjaston sijoittaminen TestNG-luokkapolulle, jotta se voi paikantaa ja käyttää JUnit-luokkia
  • Vaihda testisuorittajasi JUnitista TestNG:hen Antissa ja suorita sitten TestNG "sekoitetussa tilassa". Tämä tuo kaikki testisi samaan

Tämä lähestymistapa mahdollistaa myös olemassa olevan JUnit-testin muuntamisen TestNG:ksi.


13) Mitä @Test(invocationCount=?) ja (threadPoolSize=?) tarkoittaa?

  • @Test (threadPoolSize=?): threadPoolSize-attribuutit käskevät TestNG:n muodostamaan säiejoukon, joka suorittaa testimenetelmän useiden säikeiden läpi. Säievarastossa testimenetelmän käyttöaika lyhenee huomattavasti.
  • @Test(invocationCount=?): Kutsujen määrä kertoo, kuinka monta kertaa TestNG:n tulee suorittaa tämä testimenetelmä

14) Millä eri tavoilla voit tuottaa raportteja TestNG-tuloksista?

On kaksi tapaa tuottaa raportti Test NG:llä, ne ovat

  • Kuuntelijat: Jotta kuuntelijaluokka voidaan toteuttaa, luokan on toteutettava org.testng./TestListener Interface. TestNG ilmoittaa näille luokille suorituksen aikana, kun testi alkaa, päättyy, ohittaa, läpäisee tai epäonnistuu.
  • Toimittajat: Jotta raportointiluokka voidaan toteuttaa, luokan on toteutettava org.testng/Reporter-liittymä. Kun koko sarjan suoritus päättyy, nämä luokat kutsutaan. Kutsuttaessa koko testiajon tiedoista koostuva objekti toimitetaan tähän luokkaan.

15) Mikä on ryhmätesti TestNG:ssä?

Tämä on TestNG:n uusi ominaisuus, jonka avulla voit jakaa metodit oikeisiin osiin ja ryhmitellä testimetodeja. Group test -funktion avulla voit paitsi määrittää ryhmiin kuuluvia metodeja, myös määrittää testiryhmiä, jotka sisältävät muita ryhmiä. Ryhmät määritetään testing.xml-tiedostossasi group test -funktion avulla.


16) Millä tavoilla TestNG sallii sinun määrittää riippuvuuksia?

TestNG:n avulla voit määrittää riippuvuuksia kahdella tavalla

  • Attribuuttien käyttö riippuuMethodsista @Test-merkinnöissä
  • Attribuuttien käyttö riippuu ryhmistä @Test-merkinnöissä

17) Mitä se tarkoittaa, kun joudut välittämään parametreja käyttämällä datantarjoajia TestNG:ssä?

Kun sinun on välitettävä monimutkaisia parametreja, jotka on tarkoitus luoda Javasta, parametrit voidaan välittää käyttämällä tiedontoimittajia. Tiedontoimittajan annotaatio on @DataProvider. Tällä annotaatiolla on vain yksi merkkijonoattribuutti, jos nimeä ei ole ilmoitettu; tiedontoimittajan nimi on automaattisesti oletusarvoisesti metodin nimi. Tiedontoimittaja palauttaa ryhmä esineitä.


18) Nimeä eri menetelmiä testien suorittamiseksi TestNG:ssä?

TestNG:n testit suoritetaan TestNG-luokan avulla. Luokka on tärkein aloituskohta testien suorittamiseen TestNG-testauskehyksessä. Käyttäjät voivat luoda TestNG-objektinsa ja kutsua sitä monella eri tavalla, kuten

  • Jo olemassa olevaan testing.xml-tiedostoon
  • Synteettisellä testing.xml-tiedostolla, joka on luotu kokonaan Javasta
  • Asettamalla testiluokat suoraan

19) Anna esimerkki TestNG-koodista

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();
  }
}

Nämä haastattelukysymykset auttavat myös vivassasi (suullinen)

Jaa:

7 Kommentit

  1. Avatar Aditya Kasturi sanoo:

    Hyvä haastatteluihin valmistautumiseen

  2. Kysymykseen nro 6 olet kirjoittanut testing.xml testng.xml:n sijaan

  3. Kolmannen kysymyksen ensimmäisen rivin tulisi olla "TestNG:n edut verrattuna JUnit sisältää".

    Kiitos kysymyksistä.

  4. Avatar pradip joogi sanoo:

    11) Mitä parametrinen testaus on? Sen pitäisi olla Mikä on parametroitu testaus?

    1. Hei, kiitos kirjoituksestasi. Se tarkistetaan ja päivitetään.

Jätä vastaus

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *