introduction junit framework
Denne tutorial giver et indblik i JUnit og dets anvendelse i selen-script. Dette er tutorial # 11 i vores omfattende Selenium-tutorials-serie.
Dybest set er JUnit et open source-enhedstestværktøj og bruges til at teste små / store enheder af kode. For at køre JUnit-testen behøver du ikke oprette et klasseobjekt eller definere hovedmetoden. JUnit giver påstandsbibliotek, der bruges til at evaluere testresultatet. Annoteringer af JUnit bruges til at køre testmetoden. JUnit bruges også til at køre Automation-pakken med flere testsager.
Hvad du lærer:
- Tilføjelse af JUnit-bibliotek i Java-projekt
- JUnit-kommentarer Anvendes i selen-scripts
- JUnit påstande
- Konklusion:
- Anbefalet læsning
Tilføjelse af JUnit-bibliotek i Java-projekt
Først lærer vi, hvordan du tilføjer JUnit-bibliotek i dit Java-projekt:
er netværkssikkerhedsnøglen den samme som wifi-adgangskoden
Trin 1: Højreklik på Java-projekt-> Byg sti-> Konfigurer Byg sti
Trin # 2: Klik på Biblioteker-> Tilføj bibliotek
Trin # 3: Klik på Junit.
Trin # 4: Vælg Junit4-> Udfør
Trin # 5: Klik på OK.
Der er mange rammer som Data Driven Framework, Keyword Driven Framework og Hybrid Framework, der bruger JUnit-værktøjet som testkører, og som vil hjælpe med at starte batchudførelsen og rapporteringen.
JUnit-kommentarer Anvendes i selen-scripts
Der er mange kommentarer tilgængelige i Junit. Her har vi beskrevet få kommentarer, der bruges meget ofte i selen-scripts og rammer.
# 1. @Prøve
@Prøve annotation bruges til at køre en Junit-test.
Eksempel :
@Test public void junitTest() { System.out.println('Running Junit test'); Assert.assertEquals(1,1); }
Sådan køres en JUnit-test:
Naviger for at køre -> Kør som JUnit-test
# 2. @Før:
@Før annotering bruges til at køre en bestemt 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'); } }
Produktion:
Kører før test
Kører Junit-test
Eksempel på før kommentar ved hjælp af 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'); } }
Produktion:
Kører før test
Kører JUnit test
Kører før test
Kører anden JUnit-test
Før du kører JUnit-testmetoden, køres beforeTest-metoden. Tilsvarende, før du kører secondJuntiTest igen, kører beforeTest-metoden og producerer output som ovenfor.
# 3. @BeforeClass
Denne metode udføres en gang, før alle test køres. Metoden skal være en statisk metode. Initialisering af egenskabsfiler, databaser osv. Udføres i metoden beforeClass.
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'); } }
Produktion:
Udført før klassemetoden
Kører JUnit test
Kører anden JUnit-test
# 4. @Efter
Denne metode udføres efter 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'); } }
Produktion:
Kører JUnit test
Kører efter metoden
# 5. @Efter skole
Ligesom @BeforeClass udfører @AfterClass en gang efter at have udført alle testmetoder. Ligesom en @BeforeClass-metode skal @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'); } }
Produktion:
Kører JUnit test
Kører anden JUnit-test
Kører efterklassemetode
JUnit-påstande bruges til at validere visse betingelser og stopper udførelsen af programmet, hvis betingelserne ikke er opfyldt.
# 6. Parameteriseret JUnit-klasse:
En parametreret klasse bruges til at køre det samme scenario med flere datasæt.
Nedenfor er eksemplet for at overføre flere parametre i en JUnit-test.
@Parameters annotation tag bruges til at videregive flere data. Her har vi taget et 2 * 2-dimensionelt array, 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åstande
JUnit hævder ligestilling : Dette kontrollerer, om de to værdier er ens, og påstanden mislykkes, hvis begge værdier ikke er ens.
Dette sammenligner boolsk, int, streng, float, lang, char osv.
Syntaks :
Assert.assertEqual ('undtagen værdi', 'faktisk værdi');
Eksempel :
Assert.assertEqual ('ABC', 'ABC'); // Begge strengene er ens, og påstanden vil passere.
Assert.assertEqual ('ABC', 'DEF'); // Påstanden mislykkes, da begge strengene ikke er ens.
Assert.assertEqual ('Strenge er ikke lige', 'ABC', 'DEF'); // meddelelse smides, hvis den samme betingelse ikke er opfyldt.
Nedenfor er eksemplet på brugen af 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 ovenstående eksempel vil påstand mislykkes, da begge strengene ikke er ens. Den ene er teksten i brugernavnfeltet og den anden er teksten i adgangskodefeltet.
JUnit hævder sandt : Returnerer sandt, hvis betingelsen er sand, og påstanden mislykkes, hvis betingelsen er falsk.
Assert.assertTrue ('meddelelse', betingelse);
Assert.assertTrue ('Begge strengene er ikke lige', ('HelloWorld'). Er lig med ('HelloWorld'));
Her vil påstanden passere, når begge strengene stemmer overens. Det udskriver beskeden, hvis påstanden mislykkes.
JUnit hævder Falsk : Returnerer sandt, hvis betingelsen er falsk, og påstanden mislykkes, hvis betingelsen er sand.
Assert.assertFalse ('meddelelse', tilstand);
Assert.assertFalse ('Begge strengene er lige', ('Hej'). Er lig med ('HelloWorld'));
Der vil ikke være nogen påstandsfejl, da betingelsen er falsk.
Konklusion:
De fleste af programmørerne bruger Junit, da det er let og ikke tager meget for at teste. En simpel grøn eller rød bjælke viser det faktiske resultat af testen. Junit gør livet let, da det har sit eget sæt biblioteker og kommentarer. Her har vi også beskrevet almindeligt anvendte annoteringer brugt med selen-scripts og framework.
Flere detaljer om rammen og brugen af JUnit-kommentarer vil blive diskuteret i den kommende tutorial, der udelukkende er dedikeret til rammedesign ved hjælp af Junit. Denne tutorial hjælper os med at designe rammen ved hjælp af Junit.
Næste tutorial # 12 : I næste tutorial vil vi diskutere alt om TestNG, dets funktioner og dets applikationer. TestNG er en forhåndsramme designet til at udnytte fordelene ved både udviklere og testere.
Anbefalet læsning
- Agurk Selen Tutorial: Agurk Java Selen WebDriver Integration
- Selen Framework Oprettelse og adgang til testdata fra Excel - Selenium Tutorial # 21
- Implementering af vores første WebDriver Script - Selenium WebDriver Tutorial # 10
- Introduktion til Selen WebDriver - Selen Tutorial # 8
- Dybdegående formørkelsesvejledninger til begyndere
- Sådan bruges TestNG Framework til oprettelse af selen-scripts - TestNG Selen Tutorial # 12
- Effektiv Selen Scripting og fejlfinding af scenarier - Selen Tutorial # 27
- Fejlfinding af selen-scripts med logfiler (Log4j-vejledning) - Selen-tutorial # 26