Šioje pamokoje sužinosite, kaip integruoti agurką su „Selenium Webdriver“.
Kas yra agurkas?
Agurkas yra testavimo metodas, palaikantis elgesiu pagrįstą vystymąsi (BDD). Tai paaiškina programos elgseną paprastu anglišku tekstu, naudojant Gherkin kalbą.
Sužinokite daugiau - https://www.guru99.com/cucumber-tutorials.html
Kas yra selenas?
Selenas yra internetinės programos funkcinių bandymų automatizavimo įrankis. Selenas palaiko skirtingas kalbas, tokias kaip java, rubinas, python C # ir kt.
Sužinokite daugiau - https://www.guru99.com/selenium-tutorial.html
Šioje Agurkų pamokoje sužinosime
- Kodėl verta naudoti agurką su selenu?
- Būtina sąlyga norint naudoti agurką su selenu.
- Automatikos testavimas naudojant agurką su selenu.
- 1 scenarijus: spausdinkite tekstą konsolėje.
- 2 scenarijus: įveskite prisijungimo duomenis ir iš naujo nustatykite vertę.
- 3 scenarijus: „Guru99“ įveskite prisijungimo duomenis ir iš naujo nustatykite vertę. Atlikite tai 3 duomenų rinkiniams.
Kodėl verta naudoti agurką su selenu?
Agurkas ir selenas yra dvi populiarios technologijos.
Daugelis organizacijų funkcijoms tikrinti naudoja seleną. Šios organizacijos, naudojančios seleną, nori integruoti seleną su agurku, nes agurkas leidžia lengvai perskaityti ir suprasti programų srautus.
Agurkų įrankis grindžiamas elgesiu pagrįsto vystymosi sistema, kuri veikia kaip tiltas tarp šių žmonių:
- Programinės įrangos inžinierius ir verslo analitikas.
- Rankinis testeris ir automatikos testeris.
- Rankinis bandytojas ir kūrėjai.
Agurkų BDD sistema taip pat naudinga klientui suprasti programos kodą, nes jame naudojama paprastojo teksto „Gherkin“ kalba. Kiekvienas organizacijos narys gali suprasti programinės įrangos elgseną. Korniuko sintaksė yra paprastame, skaitomame ir suprantamame tekste.
Būtina sąlyga norint naudoti agurką su selenu
Prieš pradedant agurkų seleno integravimą, mums reikia šių elementų:
- Seleno indelio failai:
- Selenas-serveris-atskiras
Galite atsisiųsti iš http://www.seleniumhq.org/download/
Indelio failai agurkui:
- Agurkų šerdis
- Agurkas-html
- kobertūros kodo aprėptis
- Agurkas-java
- Agurkas-junitas
- Agurkas-jvm-deps
- Pranešimas apie agurkus
- Hemcresto šerdis
- Kornišonas
- Junit
Galite atsisiųsti adresu https://mvnrepository.com/search?q=Cucumber
Turite ieškoti failų ir juos atsisiųsti po vieną atskirai.
Pvz., Parodysime, kaip atsisiųsti vieną iš „jar“ failų, ty „Agurkų šerdis“.
Spustelėkite aukščiau esančią atsisiuntimo nuorodą. Jis nukreipia į žemiau esančią svetainę. Dabar ieškokite tam tikro indelio, ty „Agurkų šerdis“, kaip parodyta žemiau esančiame ekrano kopijoje:
Kitame puslapyje spustelėkite 1.2.2 versiją,
Kitame ekrane spustelėkite atsisiuntimą, kad gautumėte „Cucumber Core“ stiklainio failą.
Pastaba : jūsų patogumui čia supakavome stiklainių failus, kuriuos reikia atsisiųsti iš „Maven“. Su laiku šie indeliai gali būti atnaujinami ir tampa nesuderinami. Prašome juos atsisiųsti naudojant aukščiau pateiktą metodą.
Automatikos testavimas naudojant agurką su selenu.
Panagrinėkime žingsnius po žingsnio, kaip naudoti agurką su selenu. Čia apimsime 3 scenarijus:
- 1 scenarijus: spausdinkite tekstą konsolėje.
- 2 scenarijus: įveskite prisijungimo duomenis ir iš naujo nustatykite vertę.
- 3 scenarijus: „Guru99“ įveskite prisijungimo duomenis ir iš naujo nustatykite vertę. Atlikite tai 3 duomenų rinkiniams.
1 scenarijus: spausdinkite tekstą konsolėje.
Tokiu atveju mes tiesiog atspausdiname tekstą konsolėje naudodami agurką.
1 žingsnis. Sukurkite projektą užtemime.
Sukurkite „Java“ projektą pavadinimu „CucumberWithSelenium“, kaip parodyta žemiau esančioje ekrano kopijoje.
2 žingsnis) Pridėkite „Jar“ failus į projektą.
Dešiniuoju pelės mygtuku spustelėkite Projektas> Pasirinkite ypatybes> Eikite į „Java Build Path“. Pridėkite visas anksčiau atsisiųstas bibliotekas.
3 žingsnis) Sukurti funkcijų failą
Norėdami sukurti funkcijų failą, pirmiausia sukurkite funkcijų aplanką, kaip parodyta žemiau esančioje ekrano kopijoje.
Dabar įveskite aplanko pavadinimą „Features“ ir spustelėkite mygtuką „Finish“.
Dabar sukurkite funkcijų failą aplanke „Features“ su pavadinimu „MyTest.feature“ - procesas yra panašus į aplanko kūrimą
Pastaba: kad veiktų, gali tekti įdiegti „Cucumber Eclipse“ papildinį. Eiti - Pagalbos-> Įdiekite naują programinę įrangą-> nukopijuokite įklijuokite nuorodą http://cucumber.github.io/cucumber-eclipse/update-site/ ir įdiekite
4 žingsnis) Parašykite scenarijus.
Žemiau eilutės įrašomos „MyTest.feature“ faile naudojant „Gherkin“ kalbą, kaip parodyta žemiau:
Funkcija: Iš naujo nustatykite funkciją „Application“ prisijungimo puslapyje
Scenarijus: „Reset“ mygtuko patvirtinimas
Duota Atidarykite „Firefox“ ir paleiskite programą
Kai įveskite vartotojo vardą ir slaptažodį
Tada iš naujo nustatykite kredencialą
Kodo paaiškinimas
1 eilutė) Šioje eilutėje rašome verslo funkcionalumą.
2 eilutė) Šioje eilutėje parašome scenarijų, kurį reikia išbandyti.
3 eilutė) Šioje eilutėje mes apibrėžiame išankstinę sąlygą.
4 eilutė) Šioje eilutėje apibrėžiame veiksmą, kurį turime atlikti.
4 eilutė) Šioje eilutėje mes apibrėžiame laukiamą rezultatą ar rezultatą.
5 žingsnis) Seleno testavimo programos scenarijaus rašymas seleno agurkų karkaso dizainui
Čia mes sukuriame paketą „TestRunner“ ir po juo „Runner.java“ klasės failą.
paketas „TestRunner“;importuoti org.junit.runner.RunWith;importuoti agurką.api.CucumberOptions;importuoti agurką.api.junit.Gurkas;@RunWith (Agurkai.klasė)@CucumberOptions (features = "Features", klijai = {"StepDefinition"})visuomenės klasės bėgikas{}
Pirmiau pateiktame „Agurkų„ Java “pavyzdiniame kode vykdome agurkų testą naudodami šias anotacijas:
@RunWith () anotacija pasakoja apie bandomųjų bėgikų klasę, kad pradėtų vykdyti mūsų testus.
@CucmberOptions () anotacija naudojama norint nustatyti kai kurias mūsų agurkų bandymo ypatybes, pvz., Funkcijų failą, žingsnio apibrėžimą ir kt.
„TestRunner“ failo ekrano kopija.
6 žingsnis) Sukurkite žingsnio apibrėžimo scenarijų.
Dabar čia sukursime paketą „StepDefinition“ ir po juo scenarijaus failą „Steps.java“. Čia mes iš tikrųjų parašome seleno scenarijų, kad atliktume testą pagal agurkų metodus.
paketas „StepDefinition“;importuoti agurką.api.java.en.Suteikta;importuoti agurką.api.java.en.Tada;importuoti agurką.api.java.en.Kada;visuomenės klasės žingsniai {@Given ("Atidarykite" Firefox "ir paleiskite programą $")public void open_the_Firefox_and_launch_the_application () meta mesti{System.out.println ("Šis žingsnis atidarykite" Firefox "ir paleiskite programą.");}@Kada ("įveskite vartotojo vardą ir slaptažodį $")public void enter_the_Username_and_Password () meta Throwable{System.out.println ("Šiame žingsnyje įveskite vartotojo vardą ir slaptažodį prisijungimo puslapyje.");}@Then ("Atstatykite kredencialą $")public void Reset_the_credential () meta mesti{System.out.println ("Šiuo žingsniu spustelėkite mygtuką Reset.");}}
Pirmiau pateiktame kode klasė sukurta pavadinimu „Žingsniai“. Agurkų anotacija naudojama žemėlapiui su funkcijų failu. Kiekvienas komentarų metodas yra apibrėžtas:
@Given anotacija apibrėžia „Firefox“ atidarymo ir programos paleidimo metodą
@Kai anotacija apibrėžia vartotojo vardo ir slaptažodžio įvedimo būdą
@Tada anotacijos apibrėžimo būdas atkurti prisijungimo duomenis
Pagal kiekvieną metodą mes spausdiname tik pranešimą.
Žemiau pateikiama scenarijaus „Steps.java“ ir projekto medžio ekrano kopija, kaip ji atrodo.
Pastaba: žingsnio apibrėžimas yra ne kas kita, o veiksmai, kuriuos norite atlikti taikydami šį agurkų metodą.
7 žingsnis) Vykdykite scenarijų.
Vartotojas gali vykdyti šį scenarijų iš „Test runner“ scenarijaus, ty „Runner.java“, kaip parodyta žemiau esančioje ekrano kopijoje.
8 žingsnis) Išanalizuokite išvestį.
Vykdant scenarijų „Runner.java“, konsole rodomas tekstas. Tai tas pats tekstas, apibrėžtas scenarijuje „Steps.java“.
2 scenarijus: įveskite prisijungimo duomenis ir iš naujo nustatykite vertę.
Čia tiesiog įvesime „Credential“ „Guru99“ demonstraciniame prisijungimo puslapyje ir iš naujo nustatysime vertę
2 scenarijuje turime atnaujinti tik „Steps.java“ scenarijų. Čia mes iš tikrųjų rašome seleno scenarijų, kaip parodyta žemiau. Pirmiausia turime pridėti Selenium jar failą prie šio projekto.
1 žingsnis) Čia mes atnaujiname scenarijų „Steps.java“, kaip parodyta žemiau esančiame kode ir ekrano kopijoje.
paketas „StepDefinition“;importuoti org.openqa.selenium.By;importuoti org.openqa.selenium.WebDriver;importuoti org.openqa.selenium.firefox.FirefoxDriver;importuoti agurką.api.java.en.Suteikta;importuoti agurką.api.java.en.Tada;importuoti agurką.api.java.en.Kada;visuomenės klasės žingsniai {„WebDriver“ tvarkyklė;@Given ("Atidarykite" Firefox "ir paleiskite programą $")public void open_the_Firefox_and_launch_the_application () meta mesti{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");tvarkyklė = new FirefoxDriver ();vairuotojas.tvarkyti (). langas (). padidinti ();driver.get ("http://demo.guru99.com/v4");}@Kada ("įveskite vartotojo vardą ir slaptažodį $")public void enter_the_Username_and_Password () meta Throwable{driver.findElement (By.name ("uid")). sendKeys ("vartotojo vardas12");driver.findElement (By.name ("slaptažodis")). sendKeys ("password12");}@Then ("Atstatykite kredencialą $")public void Reset_the_credential () meta mesti{driver.findElement (By.name ("btnReset")). spustelėkite ();}}
Minėto seleno scenarijaus ekrano kopija.
2 žingsnis) Vykdykite scenarijų.
Atnaujinę paleidžiame „Runner.java“.
3 žingsnis) Išanalizuokite išvestį.
Išvestyje galite pamatyti:
- Paleista naršyklė.
- Bus atidaryta „Guru99“ banko demonstracinė svetainė.
- Vartotojo vardas ir slaptažodis dedami prisijungimo puslapyje.
- Iš naujo nustatykite vertes.
3 scenarijus: „Guru99“ įveskite prisijungimo duomenis ir iš naujo nustatykite vertę. Atlikite tai 3 duomenų rinkiniams.
Čia turime atnaujinti „Step.java“ ir funkcinį failą.
1 žingsnis. Atnaujinkite funkcijos failą, kaip parodyta žemiau:
Čia atnaujiname funkcijų failą „Scenarijaus aprašymo“ ir „pavyzdžių“ sintakse.
Funkcija: Iš naujo nustatykite funkciją „Application“ prisijungimo puslapyje
Scenarijaus aprašymas: naujo nustatymo mygtuko patvirtinimas su įgaliojimų skaičiais
Duota Atidarykite „Firefox“ ir paleiskite programą
Kai įveskite vartotojo vardą
ir slaptažodį Tada iš naujo nustatykite kredencialą
Pavyzdžiai:
| vartotojo vardas | slaptažodis |
| Vartotojas1 | slaptažodis1 |
| Vartotojas2 | slaptažodis2 |
| Vartotojas3 | slaptažodis3 |
// Šioje eilutėje mes apibrėžiame duomenų rinkinį.
2 žingsnis) Dabar atnaujinkite „Step.java“ scenarijų.
Čia mes atnaujiname metodus, kaip perduoti parametrus, atnaujintą scenarijų, parodytą žemiau:
paketas „StepDefinition“;importuoti org.openqa.selenium.By;importuoti org.openqa.selenium.WebDriver;importuoti org.openqa.selenium.firefox.FirefoxDriver;importuoti agurką.api.java.en.Suteikta;importuoti agurką.api.java.en.Tada;importuoti agurką.api.java.en.Kada;visuomenės klasės žingsniai {„WebDriver“ tvarkyklė;@Given ("Atidarykite" Firefox "ir paleiskite programą $")public void open_the_Firefox_and_launch_the_application () meta mesti{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");tvarkyklė = new FirefoxDriver ();vairuotojas.tvarkyti (). langas (). padidinti ();driver.get ("www.demo.guru99.com/v4");}@Kada ("įveskite vartotojo vardą \" (. *) \ "Ir slaptažodį \" (. *) \ "$")public void enter_the_Username_and_Password (eilutės vartotojo vardas, eilutės slaptažodis) meta mesti{driver.findElement (By.name ("uid")). sendKeys (vartotojo vardas);driver.findElement (By.name ("slaptažodis")). sendKeys (slaptažodis);}@Then ("Atstatykite kredencialą $")public void Reset_the_credential () meta mesti{driver.findElement (By.name ("btnReset")). spustelėkite ();}}
3 žingsnis) Dabar vykdykite atnaujintą scenarijų.
Žemiau esančiame ekrane rodomas sėkmingas scenarijaus vykdymas ir kiekvieno duomenų rinkinio laikas.
4 žingsnis) Išanalizuokite išvestį.
Išvestyje galite pamatyti:
Žemiau išvesties pasikartoja duomenų rinkinių skaičius, ty 3 rinkiniai.
- Paleista naršyklė.
- Bus atidaryta „Guru99“ banko demonstracinė svetainė.
- Vartotojo vardas ir slaptažodis dedami prisijungimo puslapyje.
- Iš naujo nustatykite vertes.
Išvada.
Agurkas yra labai populiarus BDD įrankis. Tai lengva perskaityti ir suprantama visoms suinteresuotosioms šalims, įskaitant techninius ir netechninius asmenis.
Agurkas gali būti integruotas su selenu atliekant 3 veiksmus
- Sukurkite funkcijų failą, kuriame žingsnis po žingsnio apibrėžkite funkciją ir scenarijus, naudodami „Gherkin“ kalbą.
- Sukurkite „Testrunner“ failą. Šiame faile mes integravome „Agurką“ su „BDD“ sistema „Selenium“. Mes vykdome šį scenarijų.
- „Creat Step“ apibrėžimas, tikrasis seleno scenarijus, apibrėžtas šiame pakete.