Kõik, mida peate teadma seleeni TestNG märkuste kohta



See artikkel seleeni TestNG märkuste kohta aitab teil näidete abil mõista erinevaid märkusi, mida TestNG seleenis toetab.

Alates kontseptsioonist on kasutusele võetud, palju testimismetoodikaid on välja arenenud, paradigmad on muutunud, kuid nõuded muutusid kuidagi püsivaks. Üks selline metoodika on TestNG mis aitab meil annotatsioonide abil testijuhud grupeerida koodi erinevatesse osadesse. Aga kuidas see töötab? Saame sellest kontseptsioonist aru artikli TestNG kommentaarid kaudu .

Käsitlen selles artiklis allpool mainitud teemasid:





TestNG sissejuhatus

TestNG tähistab Testige järgmist põlvkonda ja see on avatud lähtekoodiga testautomaatika raamistik, mis on inspireeritud JUnitist ja NUnitist. Noh, TestNG ei ole lihtsalt inspireeritud, vaid see on nende kahe raamistiku täiendatud versioon. Mis on siin täiendus? TestNG-ga täiendamine on see, et see pakub koodis täiendavaid funktsioone, nagu testimärkused, rühmitamine, prioriseerimine, parameetrite määramine ja järjestamise tehnikad, mida varem polnud võimalik teha.

cassandra veergude perekond vs laud

TestNG sissejuhatus - TestNG märkused - EdurekaSee mitte ainult ei halda testijuhtumeid, vaid ka TestNG-i abil saab testide kohta isegi üksikasjalikke aruandeid. Saadakse üksikasjalik kokkuvõte, mis kuvab ebaõnnestunud testjuhtumite arvu. Samuti saab vigu kõige varem täpselt leida ja parandada. Nüüd, kui teate, mis on TestNG, vaatame, miks TestNG-d seleenis kasutada.



Miks kasutada TestNG-d seleenis?

Tarkvaraarendajad kogu maailmast nõustuvad ühehäälselt, et testi juhtumite korral koodi kirjutamine säästab suure osa nende silumisajast. Miks? Seda seetõttu, et testijuhtumid aitavad luua tugeva ja tõrgeteta koodi, jagades kogu koodi väiksemateks testijuhtumiteks ja seejärel hinnates kõiki neid testjuhtumeid tingimuste läbimiseks / ebaõnnestumiseks, saate luua tõrgeteta koodi. Kuna ei toeta koodi käivitamist testjuhtumites, pildile tuleb TestNG, mis aitab testjuhtumite täitmisel.

TestNG toetab ka järgmisi funktsioone:

  • See loob aruande õiges vormingus, mis sisaldab mitmeid täidetud testjuhtumeid, ebaõnnestunud testjuhtumite arvu ja vahele jäetud testjuhtumeid.
  • Mitut testjuhtumit saab hõlpsamini rühmitada, teisendades need faili TestNG.xml. Siin saate määrata testjuhtumite käivitamise prioriteedid.
  • TestNG-ga saate käivitada mitu testjuhtumit mitmes brauseris, st brauseriteülene testimine .
  • Testimisraamistiku saab hõlpsasti integreerida selliste tööriistadega nagu Maven, Jenkins jne.

Nüüd, kui teate, mis on TestNG ja miks seda kasutatakse, liigume edasi ja teame erinevaid kommentaare, mida TestNG toetab seleenis.

TestNG märkused

Järgmise täidetava meetodi juhtimiseks kasutatakse seleeni TestNG märkmeid. Katse märkused on määratletud enne iga meetodit testkoodis. Kui ühtegi meetodit ei ole eesliidetud märkustega, siis seda meetodit ignoreeritakse ja seda ei käivitata testkoodi osana. Nende määratlemiseks tuleb meetoditele lihtsalt lisada märge @Test “.



TestNG märkuste tüübid:

Allpool on loetelu märkustest, mida TestNG seleenis toetab.

  • @BeforeMethod: Selle märkusega meetod käivitatakse enne iga @test kommenteeritud meetod.
  • @Meetod: See annotatsioon käivitatakse pärast iga @test kommenteeritud meetod.
  • @BeforeClass: See märkimine täidetakse enne esimene @Test meetodi täitmine. See töötab klassi kohta ainult üks kord.
  • @ Pärastklass: T tema märkus täidetakse pärast kõigi praeguse klassi katsemeetodite käitamist
  • @BeforeTest: Selle märkusega meetod käivitatakse enne esimene @Test kommenteeritud meetod.
  • @AfterTest: Selle märkusega meetod käivitatakse, kui kõik @Test kommenteeritud meetodid viivad lõpule nende klasside täitmise, mis on sisemärgisega TestNG.xml faili.
  • @BeforeSuite: See märkimine töötab ainult üks kord varem kõik sviidi testid on läbi viidud
  • @AfterSuite: Selle märkusega meetod töötab üks kord pärast kõigi sviidi testide täitmine on kulgenud
  • @BeforeGroups: See kommenteeritud meetod töötab enne esimest proovisõitu selle konkreetse rühma liikmetest.
  • @AfterGroups: See kommenteeritud meetod töötab pärast kõiki katsemeetodeid selle rühma lõpetab hukkamise.

Nii et see kõik käib TestNG-s olevate märkuste kohta. Nüüd liigume edasi ja mõistame, kuidas kirjutada esimene testjuhtum TestNG abil.

Testjuhtumite loomine TestNG märkuste abil

TestNG annotatsiooni abil testjuhtumite loomisel on erinevad etapid järgmised:

  1. Looge projekt ja lisage TestNG teek.
  2. Looge klassifail ja koodige programm
  3. Lõpuks kirjutage XML-fail ja käivitage see TestNG Suite'is.

Kui soovite saada rohkem teavet testjuhtumi kirjutamise kohta TestNG-i abil, siis kontrollige seda artiklit TestNG juhendaja . Nüüd liigume edasi ja mõistame, kuidas TestNG märkused aitavad teil testjuhtumeid rühmitada ja programmi konfigureerida.

1. juhtum:

Sellel testjuhul kasutan kolme erinevat märkust ja kodeerin programmi. Mõistame, kuidas seda teha allpool toodud näite abil.

pakett co.edureka.pages import org.openqa.selenium.WebDriver import org.openqa.selenium.chrome.ChromeDriver import org.testng.Assert import org.testng.annotations.AfterTest import org.testng.annotations.BeforeTest import org.testng .nototations. Test public class AnnotationExample {public String baseUrl = 'https://www.edureka.co/' String driverPath = 'C: //Users//Neha_Vaidya//Desktop//chromedriver_win32//chromedriver.exe' public WebDriver draiver @BeforeTest public void launchBrowser () {System.out.println ('Chrome'i brauseri käivitamine') System.setProperty ('webdriver.chrome.driver', driverPath) draiver = uus ChromeDriver () driver.get (baseUrl)} @Test public void verifyHomepageTitle () String eeldatavTitle = 'Juhendaja juhitud veebikoolitus 24x7 eluaegse toega @AfterTest public void terminateBrowser () {driver.close ()}}

Põhimõtteliselt tahan kontrollida, kas Edureka veebilehe tegelik pealkiri sobib oodatud pealkirjaga või mitte. Nii et ma kasutan kõigepealt @BeforeTest ’ Märkused ja brauseridraiveri eksemplari loomine ning navigeerimine Edureka veebisaidil driver.get () meetod. Nii et need on sammud, mis tuleks läbi viia enne testi.

Järgmisena tahan selle testi käigus kontrollida, kas oodatud pealkiri ja tegelik tiitel sobivad või mitte. Seetõttu täpsustan kõiki samme rakendusega @Test Annotation. Lõpuks tahan draiver pärast testi sulgeda ja brauseri sulgeda. Sellepärast ma kasutan @AfterTest Märkused ja juhi sulgemine. Nii rühmitan kogu koodi erinevatesse märkustesse ja täidan testjuhtumit. Käivitame programmi kui TestNG Test ja kontrollime väljundit.

Hetkepildil näete, et testjuhtum töötab edukalt vaikekatsel ja komplektil. Samuti läbis testjuhtum ja ühtegi ebaõnnestumist pole.

Vaatame nüüd veel ühte näidet, et mõista erinevate märkuste täitmise voogu põhjalikumalt. On väga vaja teada annotatsioonide täitmise voogu. Niisiis, vaatame selle teadmiseks allolevat pilti.

Märkuste täitmise voog on selline, nagu on näidatud ülaltoodud hetkepildis. Vaatame nüüd veel ühte näidet, et samast aru saada.

2. juhtum:

pakett co.edureka.pages import org.testng.annotations.AfterClass import org.testng.annotations.AfterMethod import org.testng.annotations.AfterSuite import org.testng.annotations.AfterTest import org.testng.annotations.BeforeClass import org.testng .annotations.BeforeMethod import org.testng.annotations.BeforeSuite import org.testng.annotations.BeforeTest import org.testng.annotations.Test public class testngAnnotations {// Test Case 1 @Test public void testCase1 () {System.out.println ('Test Case 1')} // Test Case 2 @Test public void testCase2 () {System.out.println ('Test Case 2')} @BeforeMethod public void beforeMethod () {System.out.println ('Enne Meetod ')} @AfterMethod public void afterMethod () {System.out.println (' After Method ')} @BeforeClass public void beforeClass () {System.out.println (' Before Class ')} @AfterClass public void afterClass ( ) {System.out.println ('Pärast klassi')} @BeforeTest public void beforeTest () {System.out.println ('Before Test')} @AfterTest public void afterTest () {System.out.println ('Pärast testi')} @BeforeSuite avalik void beforeSuite () {System.out.println ('Before Suite')} @AfterSuite public void afterSuite () {System.out.println ( 'After Suite')}}

Ülaltoodud koodis kirjutan juhuslikult kõik meetodid märkustega. Ma ei järgi selle järjestust. Kuid kui ma programmi täidan, järgib see sama järjekorda. Kontrollime nüüd väljundit.

[RemoteTestNG] tuvastas TestNG versiooni 6.14.2 enne komplekti enne testi enne klassi enne meetodit enne testi katset 1, pärast meetodit enne meetodit 2, 2 meetodit pärast klassi läbimist pärast testi läbimist: testCase1 PASSED: testCase2 =========== ==================================== Vaikekatse Testid on käivitatud: 2, tõrked: 0, vahelejätmised: 0 ================================================= Pärast Suite = ================================================ Vaikimisi komplekt Testide koguarv jooks: 2, tõrked: 0, vahelejätmised: 0 ========================================= ========

Ülaltoodud väljundist võite märgata, et see käivitas nii testjuhtumid kui ka enne Suite ja After Suite ainult ühe korra. Samuti kulges test edukalt vaikekatsel ja komplektil. Nii peate testjuhtumid käivitama märkuste abil.Nii jõuame selle artikli lõpuni TestNG kommentaarides seleenis.

Loodan, et mõistsite mõisteid ja see lisas teie teadmistele väärtust. Kui soovite saada rohkem teavet seleeni kohta, võite vaadata artiklit .

Kui leidsite selle „TestNG märkused seleenist ”Asjakohane, vaadake autor Edureka, usaldusväärne veebiõppeettevõte, mille võrgustik koosneb enam kui 250 000 rahulolevast õppijast ja mis levib üle kogu maailma.

Kas teil on meile küsimus? Palun mainige seda märkuste jaotises TestNG märkused seleenis artikkel ja me pöördume teie poole.