Încă de la conceptul de a fost introdus, au evoluat o mulțime de metodologii de testare, paradigme s-au schimbat, dar cerințele au triumfat cumva pentru a rămâne constante. O astfel de metodologie este TestNG ceea ce ne ajută să grupăm cazurile de testare în diferite secțiuni de cod cu ajutorul Adnotărilor. Dar cum funcționează? Să înțelegem acest concept prin intermediul acestui articol despre Adnotări TestNG în .
Voi acoperi subiectele menționate mai jos în acest articol:
tablou amestecând două surse de date
- Introducere în TestNG
- De ce să folosiți TestNG cu seleniu?
- Adnotări TestNG în seleniu
- Crearea cazurilor de testare utilizând adnotările TestNG
Introducere în TestNG
TestNG înseamnă Testați următoarea generație și este un cadru open-source de automatizare a testelor inspirat de JUnit și NUnit. Bine, TestNG nu este doar inspirat, ci este o versiune actualizată a acestor două cadre. Deci, ce este actualizarea aici? Actualizarea cu TestNG este că oferă funcționalități suplimentare, cum ar fi adnotări de testare, grupare, prioritizare, parametrizare și tehnici de secvențiere în cod, ceea ce nu a fost posibil anterior.
Nu numai că gestionează cazurile de testare, dar chiar și rapoarte detaliate ale testelor pot fi obținute și prin utilizarea TestNG. Va exista un rezumat detaliat care va afișa numărul cazurilor de test care nu au reușit. De asemenea, erorile pot fi localizate cu precizie și fixate cel mai devreme. Acum, că știți ce este TestNG, să vedem de ce să folosiți TestNG în seleniu.
De ce să folosiți TestNG în seleniu?
Dezvoltatorii de software din întreaga lume vor fi de acord în unanimitate că scrierea codului în cazurile de testare economisește o bună parte din timpul de depanare. De ce? Asta deoarece cazurile de testare ajută la crearea unui cod robust și fără erori prin divizarea întregului cod în cazuri de testare mai mici și apoi prin evaluarea fiecăruia dintre aceste cazuri de testare pentru a trece / eșua condiții, puteți crea cod fără erori. De cand nu acceptă executarea codului în cazurile de testare, TestNG intră în imagine, ceea ce va ajuta la executarea cazurilor de testare.TestNG acceptă, de asemenea, următoarele caracteristici:
- Acesta generează raportul într-un format adecvat care include un număr de cazuri de testare executate, numărul de cazuri de testare nereușite și cazuri de testare care au fost omise.
- Mai multe cazuri de testare pot fi grupate mai ușor convertindu-le în fișierul TestNG.xml. Aici puteți seta prioritățile pentru executarea cazurilor de testare.
- Folosind TestNG, puteți executa mai multe cazuri de testare pe mai multe browsere, adică testare cross-browser .
- Cadrul de testare poate fi integrat cu ușurință cu instrumente precum Maven, Jenkins etc.
Acum, că știți ce este TestNG și de ce este utilizat, să mergem mai departe și să cunoaștem diferitele adnotări acceptate de TestNG în seleniu.
Adnotări TestNG
Adnotările TestNG în seleniu sunt utilizate pentru a controla următoarea metodă de executat. Adnotările de testare sunt definite înainte de fiecare metodă din codul de testare. În cazul în care orice metodă nu este prefixată cu adnotări, atunci metoda respectivă va fi ignorată și nu va fi executată ca parte a codului de testare. Pentru a le defini, metodele trebuie pur și simplu adnotate cu „ @Test ‘.
Tipuri de adnotări TestNG:
Mai jos este lista adnotărilor acceptate de TestNG în seleniu.
- @BeforeMethod: O metodă cu această adnotare va fi executată înainte de fiecare @Test metoda adnotată.
- @AfterMethod: Aceasta adnotarea va fi executată după fiecare @Test metoda adnotată.
- @Înainte de curs: Această adnotare va fi executată înainte primul @Test executarea metodei. Se desfășoară o singură dată pe clasă.
- @AfterClass: T adnotarea sa va fi executată după ce au fost rulate toate metodele de testare din clasa curentă
- @BeforeTest: O metodă cu această adnotare va fi executată înainte primul @Test metoda adnotată.
- @AfterTest: O metodă cu această adnotare va fi executată când toate @Test metodele adnotate completează execuția acelor clase care sunt insidetag în TestNG.xml fişier.
- @BeforeSuite: Această adnotare va rula o singură dată înainte toate testele din suită au rulat
- @AfterSuite: Va rula o metodă cu această adnotare odată după s-au executat toate testele din suită
- @BeforeGroups: Această metodă adnotată va rula înainte de primul test din acel grup specific.
- @AfterGroups: Această metodă adnotată va rula după toate metodele de testare din acel grup își finalizează execuția.
Deci, totul este despre adnotări în TestNG. Acum să mergem mai departe și să înțelegem cum să scriem un prim caz de testare folosind TestNG.
Crearea cazurilor de testare utilizând adnotările TestNG
Diferiții pași implicați în crearea de cazuri de testare utilizând Adnotarea TestNG sunt după cum urmează:
cum se setează calea Java în Windows
- Creați un proiect și adăugați Biblioteca TestNG.
- Creați un fișier de clasă și codificați programul
- În cele din urmă, scrieți fișierul XML și executați-l pe TestNG Suite.
Dacă doriți să intrați în mai multe detalii despre scrierea unui caz de testare folosind TestNG, verificați cu amabilitate acest articol Tutorial TestNG . Acum, să mergem mai departe și să înțelegem cum adnotările TestNG vă vor ajuta să grupați cazurile de testare și să vă configurați programul.
Testul 1:În acest caz de testare, voi folosi trei adnotări diferite și voi codifica programul. Să înțelegem cum să facem acest lucru cu exemplul de mai jos.
pachet 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 .annotations.Test public class AnnotationExample {public String baseUrl = 'https://www.edureka.co/' String driverPath = 'C: //Users//Neha_Vaidya//Desktop//chromedriver_win32//chromedriver.exe' public WebDriver driver @BeforeTest public void launchBrowser () {System.out.println ('lansarea browserului Chrome') System.setProperty ('webdriver.chrome.driver', driverPath) driver = new ChromeDriver () driver.get (baseUrl)} @Test public void verifyHomepageTitle () String expectedTitle = 'Instruire online condusă de instructor cu asistență permanentă 24X7 @AfterTest public void terminateBrowser () {driver.close ()}}
Practic, vreau să verific dacă titlul real al paginii web Edureka se potrivește cu titlul așteptat sau nu. Deci, folosesc mai întâi „ @BeforeTest ’ Adnotarea și crearea unei instanțe de driver de browser și navigarea prin site-ul Edureka folosind driver.get () metodă. Deci, aceștia sunt pașii care ar trebui efectuați înainte de test.
Apoi, în timpul acestui test, vreau să verific dacă titlul așteptat și titlul real se potrivesc sau nu. De aceea, specific toate etapele cu @Test Annotation. În cele din urmă, vreau să închid driverul și să termin browserul după test. De aceea folosesc @AfterTest Adnotare și închiderea șoferului. Deci, așa grupez întregul cod în diferite adnotări și execut cazul de testare. Să rulăm programul ca TestNG Test și să verificăm rezultatul.
Puteți vedea în instantaneu că cazul de testare rulează cu succes pe un test și o suită implicită. De asemenea, cazul testului a trecut și nu există nici un eșec.
Acum să vedem încă un exemplu pentru a înțelege în profunzime fluxul de execuție al diferitelor adnotări. Este foarte necesar să cunoaștem fluxul de execuție a adnotărilor. Așadar, să aruncăm o privire asupra instantaneului de mai jos pentru a afla despre el.
Fluxul de execuție a adnotărilor va fi așa cum se arată în instantaneul de mai sus. Acum să vedem încă un exemplu pentru a înțelege același lucru.
Testul 2:
package 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 ('Before Method ')} @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 ('After Class')} @BeforeTest public void beforeTest () {System.out.println ('Before Test')} @AfterTest public void afterTest () {System.out.println ('After Test')} @BeforeSuite public void beforeSuite () {System.out.println ('Before Suite')} @AfterSuite public void afterSuite () {System.out.println ( „After Suite”)}}
În codul de mai sus, scriu la întâmplare toate metodele cu Adnotări. Nu urmăresc secvența. Dar, când voi executa programul, acesta va urma aceeași ordine. Să verificăm acum rezultatul.
[RemoteTestNG] detectat TestNG versiunea 6.14.2 Înainte de suită Înainte de test Înainte de clasă Înainte de metodă Test caz 1 După metodă Înainte de metodă Test caz 2 După metodă după clasă După test PASSED: testCase1 PASSED: testCase2 =========== ==================================== Testare implicită Testele rulate: 2, Eșecuri: 0, Ignoră: 0 ================================================ After Suite = =============================================== Suita implicită Total teste alergare: 2, Eșecuri: 0, Salturi: 0 ======================================== ========
Din rezultatul de mai sus, puteți observa că a executat atât cazurile de testare, cât și Before Suite și After Suite executate o singură dată. De asemenea, testul a rulat cu succes pe testul și suita implicite. Acesta este modul în care trebuie să executați cazurile de testare folosind Adnotări.Deci, acest lucru ne aduce la sfârșitul acestui articol despre adnotările TestNG în seleniu.
Sper că ați înțeles conceptele și a adăugat valoare cunoștințelor dvs. Acum, dacă doriți să obțineți mai multe informații despre Selenium, puteți consulta articolul .
Dacă ați găsit această „Adnotări TestNG în seleniu ”Relevant, verificați de Edureka, o companie de învățare online de încredere, cu o rețea de peste 250.000 de elevi mulțumiți răspândiți pe tot globul.
system.exit (0) java
Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii din Adnotări TestNG în seleniu articol și vom reveni la dvs.