Selén s uhorkou (rámec BDD): Výukový program s príkladom

Obsah:

Anonim

V tomto výučbe sa dozviete, ako integrovať uhorku so selénovým webdriverom.

Čo je to uhorka?

Uhorka je testovací prístup, ktorý podporuje vývoj založený na správaní (Behavior Driven Development - BDD). Vysvetľuje správanie aplikácie v jednoduchom anglickom texte pomocou jazyka Gherkin.

Viac informácií sa dozviete na - https://www.guru99.com/cucumber-tutorials.html

Čo je selén?

Selén je automatizačný nástroj na funkčné testovanie webovej aplikácie. Selén podporuje rôzne jazyky ako java, ruby, python C # atď.

Viac informácií sa dozviete na - https://www.guru99.com/selenium-tutorial.html

V tomto návode na uhorku sa naučíme -

  • Prečo používať uhorku so selénom?
  • Predpoklad pre použitie uhorky so selénom.
  • Automatizované testovanie pomocou uhorky a selénu.
  • Scenár 1: Tlač textu v konzole.
  • Scenár 2: Zadajte prihlasovacie poverenie a resetujte hodnotu.
  • Scenár 3: Zadajte prihlasovacie poverenie na Guru99 a resetujte hodnotu. Urobte to pre 3 sady údajov.

Prečo používať uhorku so selénom?

Uhorka a selén sú dve populárne technológie.

Väčšina organizácií používa selén na funkčné testovanie. Tieto organizácie, ktoré používajú selén, chcú integrovať selén do uhorky, pretože uhorka uľahčuje čítanie a porozumenie toku aplikácií.

Nástroj pre uhorky je založený na rámci rozvoja založenom na správaní, ktorý slúži ako most medzi nasledujúcimi ľuďmi:

  1. Softvérový inžinier a obchodný analytik.
  2. Ručný tester a automatizačný tester.
  3. Ručný tester a vývojári.

Rámec BDD uhorky tiež prospieva klientovi porozumením kódu aplikácie, pretože používa jazyk Gherkin, ktorý je v obyčajnom texte. Ktokoľvek v organizácii môže pochopiť správanie softvéru. Gherkinova syntax je v jednoduchom texte, ktorý je čitateľný a zrozumiteľný.

Predpoklad pre použitie uhorky so selénom

Predtým, ako začneme integráciu uhorky selénu, potrebujeme nasledujúce položky:

  • Súbory selénu:
  • Samostatný selénový server

Je možné stiahnuť na http://www.seleniumhq.org/download/

Sklenené pilníky na uhorku:

  • Uhorka-jadro
  • Uhorka-html
  • pokrytie kódom cobertura
  • Uhorka-java
  • Uhorka-junit
  • Cucumber-jvm-deps
  • Hlásenie uhoriek
  • Hemcrest-jadro
  • Uhorka
  • Junit

Je možné stiahnuť na https://mvnrepository.com/search?q=Cucumber

Musíte prehľadať súbory a stiahnuť ich jednotlivo.

Ukážeme vám napríklad stiahnutie jedného zo súborov jar, tj „Cucumber-core“.

Kliknite na vyššie uvedený odkaz na stiahnutie. Presmeruje to na web uvedený nižšie. Teraz vyhľadajte konkrétnu nádobu, tj. „Cucumber Core“, ako je to znázornené na obrázku nižšie:

Na nasledujúcej stránke kliknite na verziu 1.2.2,

Na ďalšej obrazovke kliknite na stiahnutie a získate súbor jar „Cucumber Core“.

Poznámka : Pre vašu ľahkosť sme tu zoskupili súbory jar, ktoré sa majú stiahnuť z Mavenu. Časom sa tieto nádoby môžu aktualizovať a stať sa nekompatibilnými. Budete požiadaní, aby ste si ich stiahli pomocou metódy znázornenej vyššie.

Automatizované testovanie pomocou uhorky a selénu.

Poďme si postupne preštudovať kroky, ako používať Okurku so selénom. Tu sa budeme venovať 3 scenárom:

  • Scenár 1: Tlač textu v konzole.
  • Scenár 2: Zadajte prihlasovacie poverenie a resetujte hodnotu.
  • Scenár 3: Zadajte prihlasovacie poverenie na Guru99 a resetujte hodnotu. Urobte to pre 3 sady údajov.

Scenár 1: Tlač textu v konzole.

V tomto scenári iba vytlačíme text v konzole pomocou programu Cucumber.

Krok 1) Vytvorte projekt v zatmení.

Vytvorte projekt Java s názvom „CucumberWithSelenium“, ako je znázornené na obrázku nižšie.

Krok 2) Pridanie súborov Jar do projektu.

Pravým tlačidlom myši kliknite na Projekt> Vybrať vlastnosti> Prejsť na cestu zostavenia Java. Pridajte všetky predtým stiahnuté knižnice.

Krok 3) Vytvorenie súboru funkcií

Pri vytváraní súboru funkcií najskôr vytvorte priečinok funkcií, ako je znázornené na obrázku nižšie.

Teraz zadajte názov priečinka „Funkcie“ a kliknite na tlačidlo „Dokončiť“.

Teraz vytvorte súbor funkcií v priečinku „Funkcie“ s názvom „MyTest.feature“ - proces je podobný vytvoreniu priečinka.

Poznámka: Možno bude potrebné nainštalovať doplnok Cucumber Eclipse Plugin. Prejsť - Pomáha-> Inštalovať nový softvér-> kopírovať, vložiť odkaz http://cucumber.github.io/cucumber-eclipse/update-site/ a nainštalovať

Krok 4) Napíšte scenáre.

Nižšie uvedené riadky sú napísané v súbore „MyTest.feature“ pomocou jazyka Gherkin, ako je uvedené nižšie:

Funkcia: Obnovte funkčnosť na prihlasovacej stránke aplikácie

Scenár: Overenie tlačidla Reset

Zadané Otvorte Firefox a spustite aplikáciu

Keď zadajte používateľské meno a heslo

Potom resetujte poverenie

Vysvetlenie kódu

Riadok 1) V tomto riadku napíšeme obchodnú funkcionalitu.

Riadok 2) V tomto riadku napíšeme scenár na testovanie.

Riadok 3) V tomto riadku definujeme predpoklad.

Riadok 4) V tomto riadku definujeme akciu, ktorú musíme vykonať.

Riadok 4) V tomto riadku definujeme očakávaný výsledok alebo výsledok.

Krok 5) Písanie skriptu testeru na selén pre návrh rámca selenovej uhorky

Tu vytvoríme balíček „TestRunner“ a potom pod ním súbor triedy „Runner.java“.

balíček TestRunner;import org.junit.runner.RunWith;import cucumber.api.CucumberOptions;import cucumber.api.junit.Cucumber;@RunWith (Cucumber.class)@CucumberOptions (features = "Vlastnosti", lepidlo = {"StepDefinition"})verejná trieda Runner{}

Vo vyššie uvedenom príklade kódu Cucumber Java spustíme test uhorky pomocou nasledujúcich anotácií:

Anotácia @RunWith () hovorí o triede testovacích bežcov, ktorá má začať vykonávať naše testy.

Anotácia @CucmberOptions () sa používa na nastavenie niektorých vlastností nášho testu na uhorky, ako napríklad súbor funkcií, definícia kroku atď.

Screenshot súboru TestRunner.

Krok 6) Vytvorenie skriptu s definíciou kroku.

Teraz tu vytvárame balíček „StepDefinition“ a potom pod ním skriptový súbor „Steps.java“. Tu vlastne píšeme selénový skript na vykonanie testu podľa uhorkových metód.

balíček StepDefinition;import cucumber.api.java.en.Given;import cucumber.api.java.en.Potom;import cucumber.api.java.en.Kedy;kroky verejnej triedy {@Given ("Otvorte Firefox a spustite aplikáciu $")public void open_the_Firefox_and_launch_the_application () hodí Throwable{System.out.println ("V tomto kroku otvorte Firefox a spustite aplikáciu.");}@Kedy („Zadajte používateľské meno a heslo $“)public void enter_the_Username_and_Password () hodí Throwable{System.out.println ("V tomto kroku zadajte prihlasovacie meno a heslo na prihlasovacej stránke.");}@ Potom („Obnoviť poverenie $“)public void Reset_the_credential () hodí Throwable{System.out.println ("V tomto kroku kliknite na tlačidlo Obnoviť.");}}

Vo vyššie uvedenom kóde je trieda vytvorená s názvom „Kroky“. Anotácia uhorky sa používa na mapovanie pomocou súboru funkcií. Každá metóda anotácie je definovaná:

@Given annotation define method to open firefox and launch the application

@ Keď anotácia definuje spôsob zadania používateľského mena a hesla

@ Potom anotácia definuje spôsob obnovenia poverenia

V rámci každej metódy iba tlačíme správu.

Nižšie je uvedený obrázok obrazovky skriptu „Steps.java“ a strom projektu, ako to vyzerá.

Poznámka: Definícia kroku nie je nič iné ako kroky, ktoré chcete vykonať v rámci tejto metódy uhorky.

Krok 7) Spustenie skriptu.

Užívateľ môže tento skript vykonať zo skriptu Test Runner, tj „Runner.java“, ako je znázornené na obrázku nižšie.

Krok 8) Analyzujte výstup.

Pri vykonávaní skriptu „Runner.java“ zobrazuje text na konzole. Je to rovnaký text definovaný v skripte „Steps.java“.

Scenár 2: Zadajte prihlasovacie poverenie a resetujte hodnotu.

Tu len zadáme poverenie na prihlasovacej stránke ukážky Guru99 a resetujeme hodnotu

V prípade scenára 2 musíme aktualizovať iba skript „Steps.java“. Tu vlastne píšeme selénový skript, ako je uvedené v nasledujúcich krokoch. Najskôr do tohto projektu musíme pridať súbor seleničitých nádob.

Krok 1) Tu aktualizujeme skript „Steps.java“, ako je uvedené v nasledujúcom kóde a snímke obrazovky.

balíček StepDefinition;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import cucumber.api.java.en.Given;import cucumber.api.java.en.Potom;import cucumber.api.java.en.Kedy;kroky verejnej triedy {Ovládač WebDriver;@Given ("Otvorte Firefox a spustite aplikáciu $")public void open_the_Firefox_and_launch_the_application () hodí Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");ovládač = nový FirefoxDriver ();driver.manage (). window (). maximize ();driver.get ("http://demo.guru99.com/v4");}@Kedy („Zadajte používateľské meno a heslo $“)public void enter_the_Username_and_Password () hodí Throwable{driver.findElement (By.name ("uid")). sendKeys ("username12");driver.findElement (By.name ("heslo")). sendKeys ("heslo12");}@ Potom („Obnoviť poverenie $“)public void Reset_the_credential () hodí Throwable{driver.findElement (By.name ("btnReset")). click ();}}

Screenshot vyššie uvedeného selénového skriptu.

Krok 2) Spustite skript.

Po aktualizácii spustíme Runner.java.

Krok 3) Analyzujte výstup.

Vo výstupe môžete vidieť nasledovné:

  • Spustený prehliadač.
  • Otvorí sa ukážková stránka banky Guru99.
  • Používateľské meno a heslo sú umiestnené na prihlasovacej stránke.
  • Obnovte hodnoty.

Scenár 3: Zadajte prihlasovacie poverenie na Guru99 a resetujte hodnotu. Urobte to pre 3 sady údajov.

Tu musíme aktualizovať súbor „Step.java“ aj súbor funkcií.

Krok 1) Aktualizujte súbor funkcií, ako je uvedené nižšie:

Tu aktualizujeme súbor funkcií o syntax „Scenár obrys“ a „príklady“.

Funkcia: Obnovte funkčnosť na prihlasovacej stránke aplikácie

Osnova scenára: Overenie resetovacieho tlačidla s číslami poverenia

Zadané Otvorte Firefox a spustite aplikáciu

Keď zadajte meno používateľa a heslo

Potom resetujte poverenie

Príklady:

| používateľské meno | heslo |

| Používateľ1 | heslo1 |

| Používateľ2 | heslo2 |

| User3 | heslo3 |

// V tomto riadku definujeme množinu údajov.

Krok 2) Teraz aktualizujte skript Step.java.

Tu aktualizujeme metódy odovzdávania parametrov, aktualizovaný skript zobrazený nižšie:

balíček StepDefinition;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.firefox.FirefoxDriver;import cucumber.api.java.en.Given;import cucumber.api.java.en.Potom;import cucumber.api.java.en.Kedy;kroky verejnej triedy {Ovládač WebDriver;@Given ("Otvorte Firefox a spustite aplikáciu $")public void open_the_Firefox_and_launch_the_application () hodí Throwable{System.setProperty ("webdriver.gecko.driver", "E: //Selenium//Selenium_Jars//geckodriver.exe");ovládač = nový FirefoxDriver ();driver.manage (). window (). maximize ();driver.get ("www.demo.guru99.com/v4");}@Kedy ("Zadajte používateľské meno \" (. *) \ "A heslo \" (. *) \ "$")public void enter_the_Username_and_Password (meno používateľa reťazca, heslo reťazca) hodí Throwable{driver.findElement (By.name ("uid")). sendKeys (meno používateľa);driver.findElement (By.name ("heslo")). sendKeys (heslo);}@ Potom („Obnoviť poverenie $“)public void Reset_the_credential () hodí Throwable{driver.findElement (By.name ("btnReset")). click ();}}

Krok 3) Teraz vykonajte aktualizovaný skript.

Nižšie uvedená obrazovka zobrazuje úspešné vykonanie skriptu a čas potrebný na každú sadu údajov.

Krok 4) Analyzujte výstup.

Vo výstupe môžete vidieť nasledovné:

Nižšie sa výstup opakuje pre počet súborov údajov, tj 3 sady.

  • Spustený prehliadač.
  • Otvorí sa ukážková stránka banky Guru99.
  • Používateľské meno a heslo sú umiestnené na prihlasovacej stránke.
  • Obnovte hodnoty.

Záver.

Uhorka je veľmi populárny nástroj BDD. Je ľahko čitateľný a rozumejú mu všetky zúčastnené strany vrátane technických a netechnických osôb.

Uhorku je možné integrovať do selénu pomocou nasledujúcich 3 krokov

  1. Vytvorte súbor prvkov, v ktorých krok za krokom definujte objekt a scenáre pomocou jazyka Gherkin.
  2. Vytvorte súbor Testrunner. V tomto súbore sme integrovali uhorku s rámcom BDD v seléne. Vykonávame tento skript.
  3. Vytvorte definíciu Step, skutočný selénový skript definovaný v tomto balíku.