cucumber gherkin tutorial
Ta informativni vadnik pojasnjuje prednosti ogrodja kumaric s kumaricami in kako z jasnimi primeri napisati skripte za avtomatizacijo z uporabo jezika gherkin:
Kumara je orodje, ki temelji na okviru vedenjskega razvoja (BDD). BDD je metodologija za razumevanje funkcionalnosti aplikacije v preprosti obliki navadnega besedila.
Glavni cilj okvira za razvoj obnašanja je, da različne projektne vloge, kot so poslovni analitiki, zagotavljanje kakovosti, razvijalci itd., Razumejo aplikacijo, ne da bi se poglobili v tehnične vidike.
Orodje za kumare se običajno uporablja v realnem času za pisanje sprejemnih testov za prijavo. Orodje za kumare nudi podporo številnim programskim jezikom, kot so Java, Ruby, .Net itd. Lahko ga integriramo z več orodji, kot so Selenium, Capybara itd.
Kaj se boste naučili:
kje lahko brezplačno gledam anime
Kaj je Gherkin?
Kumarica je jezik, ki ga uporablja orodje Kumare. Gre za preprosto predstavitev vedenja aplikacije v angleščini. Kumara koncept datotek s funkcijami uporablja za namene dokumentacije. Vsebina v datotekah s funkcijami je napisana v jeziku Gherkin.
V naslednjih temah bomo videli več o prednostih ogrodja Cucumber Gherkin, Integracija kumare s selenom, Ustvarjanje datoteke funkcije in ustrezne datoteke z definicijo korakov ter Vzorčna datoteka funkcije.
Skupni izrazi za ogrodje kumaric
Cucumber Gherkin framework uporablja določene ključne besede, ki so bistvene za pisanje datoteke funkcije.
Naslednji izrazi se najpogosteje uporabljajo v datotekah z značilnostmi:
# 1) Lastnost:
Datoteka funkcije mora vsebovati opis na visoki ravni aplikacije, ki se preizkuša (AUT). Prva vrstica datoteke funkcije se mora začeti s ključno besedo 'Feature', ki sledi opisuaplikacijov preskusu. V skladu s standardi, ki jih predpisuje Kumara, mora datoteka z elementi vključevati naslednje tri elemente kot prva vrstica.
- Ključna beseda funkcije
- Ime funkcije
- Opis funkcije (neobvezno)
Ključni besedi za funkcijo mora slediti ime funkcije. Vključuje lahko izbirni razdelek z opisom, ki se lahko razteza v več vrstic datoteke funkcije. Datoteka funkcije ima pripono .feature.
# 2) Scenarij:
Scenarij je testna specifikacija funkcionalnosti, ki jo je treba preskusiti. V idealnem primeru lahko datoteka funkcije vsebuje enega ali več scenarijev kot del funkcije. Scenarij vključuje več preskusnih korakov. V skladu s standardi kumar mora scenarij vključevati 3-5 testnih korakov, saj dolgotrajni scenariji ponavadi izgubijo izrazno moč, ko se število korakov poveča.
Scenarij lahko vključuje naslednje korake:
- Dejanje, ki ga mora izvesti uporabnik.
- Pričakovani rezultati akcije.
V jeziku kornišon mora scenarij vsebovati naslednje ključne besede:
- Glede na to
- Kdaj
- Potem
- In
Glede na:
Dana ključna beseda se uporablja za določanje predpogojev za izvajanje določenega scenarija. Scenarij lahko vključuje več danih izjav ali pa danih izjav za scenarij ne more biti.
Kdaj:
Ta ključna beseda se uporablja za določanje dejanja ali dogodka, ki ga izvede uporabnik, kot je klik na gumb, vnos podatkov v polje z besedilom itd. V enem scenariju je lahko več stavkov.
Nato:
Nato se s ključno besedo določi pričakovani izid dejanja, ki ga izvede uporabnik. Idealno bi bilo, če mora ključni besedi slediti ključna beseda Then, da bi razumeli pričakovani rezultat uporabniških dejanj.
In:
Ključna beseda se uporablja kot zvezna ključna beseda za kombiniranje več stavkov. Na primer, več stavkov Give in When v scenariju je mogoče kombinirati s ključno besedo 'And'.
# 3) Oris scenarija:
Oris scenarija je način parametrizacije scenarijev.
To se idealno uporablja, kadar je treba za več naborov podatkov izvesti isti scenarij, vendar preskusni koraki ostanejo enaki. Okviru scenarija mora slediti ključna beseda „Primeri“, ki določa nabor vrednosti za vsak parameter.
Spodaj je primer za razumevanje koncepta Osnutka scenarija:
Primer:
Oris scenarija: Naložite datoteko
Glede na to da je uporabnik na zaslonu za nalaganje datotek.
Kdaj uporabnik klikne gumb Prebrskaj.
In uporabnik vstopi v besedilno polje za nalaganje.
In uporabnik klikne gumb za vnos.
Potem preveri, ali je nalaganje datotek uspešno.
Primeri:
| ime datoteke |
| datoteka1 |
| datoteka2 |
Parametre v orisu scenarija je treba navesti z znaki ''. Seznam vrednosti podatkov za parameter je treba navesti s simbolom Pipe (|).
# 4) Ozadje:
Ključna beseda v ozadju se uporablja za združevanje več danih stavkov v eno skupino.
To se običajno uporablja, kadar se isti niz danih stavkov ponovi v vsakem scenariju datoteke funkcije. Namesto da bi podali izjave za vsak scenarij večkrat, jih lahko pred prvim scenarijem določite s ključno besedo »Ozadje«.
Primer:
Ozadje:
Uporabnik je na strani za prijavo v aplikacijo
Prednosti ogrodja kumaric
Spodaj so navedene prednosti ogrodja Cucumber Gherkin, zaradi katerih je Kumara idealna izbira za hitro razvijajočo se agilno metodologijo v današnjem poslovnem svetu:
- Kumara je odprtokodno orodje.
- Predstavitev navadnega besedila olajša razumevanje scenarijev netehničnim uporabnikom.
- Premosti komunikacijsko vrzel med različnimi zainteresiranimi stranmi, kot so poslovni analitiki, razvijalci in osebje za zagotavljanje kakovosti.
- Testne primere avtomatizacije, razvite z orodjem Cucumber, je lažje vzdrževati in razumeti.
- Enostavna integracija z drugimi orodji, kot sta Selenium in Capybara.
Integracija kumare s selenom
Kumara in selen sta dve najmočnejši orodji za funkcionalno testiranje. Integracija kumare s selenium Webdriver pomaga različnim netehničnim članom projektne skupine, da razumejo tok uporabe.
Spodaj so navedeni koraki za integracijo kumare s selenium Webdriver:
Korak 1:
Kumare je mogoče integrirati s programom Selenium Webdriver s prenosom potrebnih datotek JAR.
Spodaj je seznam datotek JAR, ki jih je treba prenesti za uporabo kumar s programom Selenium Webdriver:
- pokritost-2.1.1.jar
- kumara-jedro-1.2.2.jar
- kumara-java-1.2.2.jar
- kumare-junit-1.2.2.jar
- kumara-jvm-deps-1.0.3.jar
- kumare-poročanje-0.1.0.jar
- kornišon-2.12.2.jar
- hamcrest-core-1.3.jar
- junit-4.11.jar
Zgornje datoteke JAR lahko prenesete iz Mavena Spletna stran .
Vsako od zgornjih datotek JAR je treba posamično prenesti z zgornjega spletnega mesta.
2. korak:
V Eclipse ustvarite nov projekt in v projekt dodajte zgornje datoteke JAR. Če želite v projekt dodati datoteke JAR, z desno miškino tipko kliknite projekt -> Gradnja poti -> Konfiguriranje poti gradnje.
Kliknite na Dodajte zunanje JAR-je in v projekt dodajte seznam zgornjih datotek JAR.

kateri je najboljši operacijski sistem
3. korak:
Pred ustvarjanjem datotek s funkcijami in datotek z definicijo korakov moramo v Eclipse namestiti dodatek Natural. To lahko storite s kopiranjem in lepljenjem datoteke URL na Pomoč -> Namestitev nove programske opreme -> URL

Kliknite na Gumb Naprej za namestitev vtičnika v Eclipse.

Ustvarjanje datoteke funkcije
V strukturi projekta ustvarite ločene mape za datoteke funkcij in datoteke z definicijo korakov. Datoteke z definicijami korakov vključujejo vrstice za kodiranje Java, medtem ko datoteka z značilnostmi vsebuje angleške stavke v obliki jezika Gherkin.
- Z desno miškino tipko kliknite projekt -> Ustvari ločeno mapo za shranjevanje datoteke funkcije Novo -> Paket .
- Datoteko funkcije lahko ustvarite tako, da odprete projekt / paket -> z desno miškino tipko Novo -> Datoteka .

- Navedite ime za datoteko funkcije. Datoteki funkcije mora slediti pripona .feature

- Struktura projekta mora biti videti kot spodnja struktura.

Ustvarjanje datoteke z definicijo koraka
Vsak korak datoteke funkcije mora biti preslikan v ustrezno definicijo koraka. Oznake, uporabljene v datoteki Cucumber Gherkin, je treba preslikati v njeno definicijo koraka z uporabo oznak @Given, @When in @Then.
Sledi sintaksa datoteke z definicijo koraka:
Sintaksa:
@TagName (“^ Ime koraka $”)
Public void methodName ()
{
Opredelitev metode
}
Imena korakov morajo imeti predpono s simbolom karat (^) in pripono s simbolom ($). Ime metode je lahko katero koli veljavno ime, ki je sprejemljivo v skladu s standardi kodiranja Java. Opredelitev metode vključuje stavke kodiranja v Javi ali katerem koli drugem programskem jeziku po izbiri preizkuševalca.
Primeri datotek s funkcijo in koraki z definicijo korakov
Za ustvarjanje datoteke z značilnostmi in datoteke z definicijo korakov je mogoče uporabiti naslednji scenarij:
Scenarij:
- Odprite prijavno stran preskusne aplikacije.
- Vnesite uporabniško ime
- Vnesite geslo
- Kliknite gumb Prijava.
- Preverite, ali je prijava uporabnika uspešna.
Datoteka funkcije:
Zgornji scenarij lahko zapišemo v obliki datoteke z značilnostmi, kot je prikazano spodaj:
Značilnost: Prijavite se v testno aplikacijo.
Scenarij: Prijavite se v aplikacijo.
Glede na to Odprite brskalnik Chrome in zaženite aplikacijo.
Kdaj Uporabnik vnese uporabniško ime v polje UserName.
In Uporabnik v polje geslo vnese geslo.
Kdaj Uporabnik klikne gumb Prijava.
Datoteka z definicijo koraka:
V zgornji funkciji lahko datoteko preslikate v ustrezno datoteko z definicijo koraka, kot je prikazano spodaj. Upoštevajte, da je za zagotovitev povezave med datoteko funkcije in datoteko definicije koraka treba ustvariti datoteko preizkusnega tekača.
Spodaj je predstavljena datoteka z definicijo koraka glede na njeno funkcijsko datoteko.
package com.sample.stepdefinitions; import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import cucumber.api.java.en.And; import cucumber.api.java.en.Given; import cucumber.api.java.en.When; public class StepDefinition { WebDriver driver; @Given('^Open Chrome browser and launch the application$') public void openBrowser() { driver = new ChromeDriver(); driver.manage().window().maximize(); driver.get('www.facebook.com'); } @When('^User enters username onto the UserName field$') public void enterUserName() { driver.findElement(By.name('username')).sendKeys('test@demo.com'); } @And('^User enters password onto the Password field$') public void enterPassword() { driver.findElement(By.name('password')).sendKeys('test@123'); } @When('^User clicks on Login button$') public void clickOnLogin() { driver.findElement(By.name('loginbutton')).click(); } } Razred TestRunner se uporablja za povezavo med funkcijsko datoteko in datoteko z definicijo koraka. Spodaj je vzorčna predstavitev, kako izgleda razred TestRunner. Razred TestRunner je praviloma prazen razred brez definicije razreda.
najboljši način za prenos youtube mp3
Package com.sample.TestRunner import org.junit.runner.RunWith; import cucumber.api.CucumberOptions; import cucumber.api.junit.Cucumber; @RunWith(Cucumber.class) @CucumberOptions(features='Features',glue={'StepDefinition'}) public class Runner { } Za zagon datoteke z značilnostmi in datotek z definicijo korakov moramo zagnati datoteko razreda TestRunner.
Primeri
Spodaj je predstavljena datoteka z različnimi scenariji.
1. primer:
Če želite preveriti, ali sta uporabniško ime in geslo na voljo na prijavni strani:
Značilnost: Preverite prikaz polj uporabniškega imena in gesla na prijavni strani.
Scenarij: Za preverjanje prikaza polj uporabniškega imena in gesla.
Glede na to Uporabnik odpre brskalnik Firefox in se pomakne do preizkušane aplikacije.
Kdaj Uporabnik se pomakne do strani za prijavo.
Potem Na strani za prijavo preverite prikaz polja z uporabniškim imenom.
In Preverite prikaz polja za geslo na strani za prijavo.
2. primer:
Spodaj je primer ključne besede za oris scenarija v Cucumber Gherkin:
Značilnost: Preverite, ali je prijava uspešna za več naborov testnih podatkov.
Oris scenarija: Če želite preveriti, ali je prijava uspešna za več naborov testnih podatkov.
Glede na to Odprite brskalnik Chrome in zaženite aplikacijo.
Kdaj Uporabnik vstopi v polje UserName.
In Uporabnik vstopi v polje Geslo.
Kdaj Uporabnik klikne gumb Prijava.
Primeri:
| uporabniško ime | geslo |
| uporabnik1 | geslo1 |
| uporabnik2 | geslo2 |
Zaključek
- BDD je metodologija za razumevanje funkcionalnosti aplikacije v preprostem predstavitvi v golem besedilu.
- Kumara je orodje, ki s pomočjo razvoja na podlagi vedenja piše sprejemne teste aplikacije. Uporablja se za premostitev komunikacijske vrzeli med različnimi deležniki projekta.
- Glavna uporaba kumar je v njeni enostavnosti razumevanja uporabe funkcijskih datotek s strani netehničnih uporabnikov.
Ni še prepozno, da poskusite to orodje za kumarice v jeziku Gherkin.
Priporočeno branje
- Vadnica Geba - Testiranje avtomatizacije brskalnika z orodjem Geb
- Vadnica za kumare selena: Integracija kumar Java Selenium WebDriver
- Avtomatizirano preizkušanje z uporabo orodij za kumare in selen - vaja št. 30
- Kaj je testiranje avtomatizacije (Ultimate Guide to Start Test Automation)
- Vadnica za Spock: Testiranje s Spockom in Groovyjem
- Najboljša orodja za testiranje programske opreme 2021 (QA Test Automation Tools)
- Vadnica za destruktivno testiranje in nedestruktivno testiranje
- Funkcionalno testiranje vs nefunkcionalno testiranje