introduction junit framework
Denne opplæringen vil gi et innblikk i JUnit og dens bruk i selen-skript. Dette er opplæring nr. 11 i vår omfattende Selenium-opplæringsserier.
I utgangspunktet er JUnit et testverktøy med åpen kildekode og brukes til å teste små / store enheter med kode. For å kjøre JUnit-testen trenger du ikke opprette et klasseobjekt eller definere hovedmetoden. JUnit gir påstandsbibliotek som brukes til å evaluere testresultatet. Merknader om JUnit brukes til å kjøre testmetoden. JUnit brukes også til å kjøre Automation-pakken med flere testsaker.
Hva du vil lære:
- Legger til JUnit-bibliotek i Java-prosjekt
- JUnit-merknader Brukes i selen-skript
- JUnit påstander
- Konklusjon:
- Anbefalt lesing
Legger til JUnit-bibliotek i Java-prosjekt
Først vil vi lære hvordan du legger til JUnit-biblioteket i Java-prosjektet ditt:
c ++ tilfeldig tall mellom 1 og 3
Trinn 1: Høyreklikk på Java-prosjekt-> Bygg bane-> Konfigurer bygg bane
Steg 2: Klikk på Biblioteker-> Legg til bibliotek
Trinn 3: Klikk på Junit.
Trinn 4: Velg Junit4-> Fullfør
Trinn 5: Klikk OK.
Det er mange rammer som Data Driven Framework, Keyword Driven Framework og Hybrid Framework som bruker JUnit-verktøyet som testløper og som vil bidra til å starte batchutførelsen og rapporteringen.
JUnit-merknader Brukes i selen-skript
Det er mange kommentarer tilgjengelig i Junit. Her har vi beskrevet få merknader som brukes veldig ofte i Selenium-skript og rammeverk.
#1. @Test
@Test merknader brukes til å kjøre en Junit-test.
Eksempel :
@Test public void junitTest() { System.out.println('Running Junit test'); Assert.assertEquals(1,1); }
Slik kjører du en JUnit-test:
Naviger til løp -> Kjør som JUnit-test
# 2. @Før:
@Før merknader brukes til å kjøre en spesifikk test før hver test.
public class Junttest { @Before public void beforeTest(){ System.out.println('Running before test'); } @Test public void junitTest(){ System.out.println('Running Junit test'); } }
Produksjon:
Kjører før test
Kjører Junit-test
Eksempel på før kommentar ved bruk av to junit testmetoder.
public class Junttest { @Before public void beforeTest(){ System.out.println('Running before test'); } @Test public void junitTest(){ System.out.println('Running Junit test'); } @Test public void secondJunitTest(){ System.out.println('Running second Junit test'); } }
Produksjon:
Kjører før test
Kjører JUnit-test
Kjører før test
Kjører andre JUnit-test
Før du kjører JUnit-testmetoden vil testmetoden kjøres. Tilsvarende, før du kjører secondJuntiTest igjen vil testmetoden kjøres og produserer utdata som ovenfor.
# 3. @BeforeClass
Denne metoden kjøres en gang før du kjører all test. Metoden må være en statisk metode. Initialisering av eiendomsfiler, databaser osv. Gjøres i beforeClass-metoden.
public class Junttest { @BeforeClass public static void beforeClassTest(){ System.out.println('Executed before class method'); } @Test public void junitTest(){ System.out.println('Running Junit test'); } @Test public void secondJunitTest(){ System.out.println('Running second Junit test'); } }
Produksjon:
Utført før klassemetoden
Kjører JUnit-test
Kjører andre JUnit-test
# 4. @Etter
Denne metoden utføres etter hver test.
public class Junttest { @Test public void junitTest(){ System.out.println('Running Junit test'); } @After public void afterTest(){ System.out.println('Running after method'); } }
Produksjon:
Kjører JUnit-test
Kjører etter metoden
# 5. @Etter timen
Som @BeforeClass, @AfterClass kjøres en gang etter å ha utført alle testmetodene. Som en @BeforeClass-metode, må @AfterClass-metoden være en statisk metode.
public class Junttest { @Test public void junitTest(){ System.out.println('Running Junit test'); } @Test public void secondJunitTest(){ System.out.println('Running second Junit test'); } @AfterClass Public static void afterClassTest(){ System.out.println('Running afterclass method'); } }
Produksjon:
Kjører JUnit-test
Kjører andre JUnit-test
Kjører etterklassemetode
JUnit-påstander brukes til å validere visse forhold og stopper gjennomføringen av programmet hvis vilkårene ikke er oppfylt.
# 6. Parameterisert JUnit-klasse:
En parameterisert klasse brukes til å kjøre det samme scenariet med flere datasett.
Nedenfor er eksemplet for å overføre flere parametere i en JUnit-test.
@Parameters merkelapp brukes til å overføre flere data. Her har vi tatt 2 * 2 dimensjonale matriser, og dataene kan visualiseres som nedenfor:
@RunWith(Parameterized.class) public class Junttest { public String name; public int age; public Junttest(String name,int age){ this.name=name; this.age=age; } @Test public void testMethod(){ System.out.println('Name is: '+name +' and age is: '+age); } @Parameters public static Collection parameter(){ Object()() pData=new Object(2)(2); pData(0)(0)='Tom'; pData(0)(1)=30; pData(1)(0)='Harry'; pData(1)(1)=40; return Arrays.asList(pData); } }
JUnit påstander
JUnit hevder likestillinger : Dette sjekker om de to verdiene er like, og påstanden mislykkes hvis begge verdiene ikke er like.
Dette sammenligner boolsk, int, streng, flyte, lang, røye etc.
Syntaks :
Assert.assertEqual ('unntatt verdi', 'faktisk verdi');
Eksempel :
Assert.assertEqual ('ABC', 'ABC'); // Begge strengene er like og påstanden vil passere.
Assert.assertEqual (“ABC”, “DEF”); // Påstand vil mislykkes ettersom begge strengene ikke er like.
Assert.assertEqual ('Strenger er ikke like', 'ABC', 'DEF'); // meldingen blir kastet hvis den like betingelsen ikke er oppfylt.
Nedenfor er eksemplet på bruk av JUnit-påstand i selen:
String username=driver.findElement(By.id(“username”)).getText(); String password=driver.findElement(By.id(“password”)).getText(); Assert.assertEqual(“Mismatch in both the string”, username, password);
I eksemplet ovenfor vil påstand mislykkes, da begge strengene ikke er like. Den ene er teksten i brukernavnfeltet, og den andre er teksten i passordfeltet.
JUnit hevder sant : Returnerer sant hvis tilstanden er sann og påstand mislykkes hvis tilstanden er falsk.
Assert.assertTrue (“melding”, tilstand);
Assert.assertTrue ('Begge strengene er ikke like', ('HelloWorld'). Tilsvarer ('HelloWorld'));
Her vil påstanden passere når begge strengene stemmer overens. Det vil skrive ut meldingen hvis påstanden mislykkes.
JUnit hevder falske : Returnerer sant hvis tilstanden er falsk og påstanden mislykkes hvis tilstanden er sant.
Assert.assertFalse (“melding”, tilstand);
Assert.assertFalse ('Begge strengene er like', ('Hello'). Tilsvarer ('HelloWorld'));
Det vil ikke være noen påstandsfeil ettersom tilstanden er falsk.
Konklusjon:
De fleste av programmørene bruker Junit da det er enkelt og ikke tar mye arbeid for å teste. En enkel grønn eller rød bjelke viser det faktiske resultatet av testen. Junit gjør livet enkelt siden det har sitt eget sett med biblioteker og merknader. Her har vi også beskrevet ofte brukte merknader brukt med selen-skript og rammeverk.
Mer detalj om rammeverket og bruken av JUnit-merknader vil bli diskutert i den kommende opplæringen som er dedikert eksklusivt til rammedesign ved bruk av Junit. Denne opplæringen vil hjelpe oss med å designe rammeverket ved hjelp av Junit.
Neste opplæring # 12 : I neste opplæring vil vi diskutere alt om TestNG, dets funksjoner og applikasjoner. TestNG er et forhåndsrammeverk designet på en måte å utnytte fordelene fra både utviklere og testere.
Anbefalt lesing
- Agurk Selen Tutorial: Agurk Java Selen WebDriver Integration
- Selen Framework Creation and Accessing Test Data from Excel - Selenium Tutorial # 21
- Implementering av vårt første WebDriver Script - Selenium WebDriver Tutorial # 10
- Introduksjon til Selen WebDriver - Selenium Tutorial # 8
- In-Depth Eclipse Tutorials For Beginners
- Hvordan bruke TestNG Framework for å lage selenskript - TestNG Selen Tutorial # 12
- Effektiv Selen Scripting og feilsøking av scenarier - Selenium Tutorial # 27
- Feilsøking av selen-skript med logger (Log4j-opplæring) - Selen-opplæring # 26