Gherkin Language: Format, Syntax & Test na uhorku uhorkovú

Obsah:

Anonim

Čo je to Gherkin Language?

Gherkin je obchodne čitateľný jazyk, ktorý vám pomôže opísať obchodné správanie bez toho, aby ste zachádzali do podrobností implementácie. Je to doménovo špecifický jazyk pre definovanie testov pre špecifikácie vo formáte Cucumber. Používa jednoduchý jazyk na popísanie prípadov použitia a umožňuje používateľom odstrániť logické podrobnosti z testov správania.

Text v Gherkinovom jazyku slúži ako dokumentácia a kostra vašich automatických testov. Formát Gherkin je založený na gramatike TreeTop, ktorá existuje v viac ako 37 jazykoch. Preto môžete napísať svoju uhorku v 37+ hovorených jazykoch.

Tento skript slúži na dva primárne účely:

  • Dokumenty scenáre používateľa
  • Písanie automatizovaného testu (BDD)

V tomto výučbe hry Gherkin sa naučíte

  • Čo je to Gherkin Language?
  • Prečo Gherkin?
  • Gherkinova syntax
  • Dôležité pojmy používané v okurke
  • Uhorkový príklad
  • Najlepšie postupy pri používaní okurky
  • Výhody okurky

Prečo Gherkin?

Potreba okurky sa dá ľahko vysvetliť na nasledujúcich obrázkoch

Pred okurkou

Po Gherkinovi

Gherkinova syntax

Gherkin je jazyk zameraný na riadky, rovnako ako YAML a Python. Každý riadok sa volá krok a začína kľúčovým slovom a koncom terminálov sa zastaví. Pre odsadenie sa používa tabulátor alebo medzera.

V tomto skripte je možné pridať komentár kamkoľvek chcete, mal by však začínať znakom #. Číta každý riadok po odstránení kľúčových slov Ghrekina, ako je uvedené, kedy, potom atď.

Typické uhorky sú:

Gherkin Scripts: spája ľudský koncept príčiny a následku so softvérovým konceptom vstupu / procesu / výstupu.

Uhorka syntax:

Funkcia: Názov scenáraVzhľadom na [predpoklady alebo počiatočný kontext]When [Event or Trigger]Potom [Očakávaný výstup]

Dokument Gherkin má príponu .feature a jednoducho iba testovací súbor s efektnou príponou. Uhorka prečíta dokument Gherkin a vykoná test na overenie, či sa softvér chová podľa Gherkinovej syntaxe.

Dôležité pojmy používané v okurke

  • Funkcia
  • Pozadie
  • Scenár
  • Dané
  • Kedy
  • Potom
  • A
  • ale
  • Príklady osnovy scenára

Pre názov objektu sa používa konvencia pomenovania. V uhorke však nie sú stanovené nijaké pravidlá týkajúce sa mien.

Funkcia:

Súbor by mal mať príponu .feature a každý súbor funkcií by mal mať iba jednu funkciu. Kľúčové slovo prvku, ktoré je súčasťou Feature: a po tomto pridaní sa napíše medzera a názov objektu.

Scenár:

Každý súbor funkcií môže mať viac scenárov a každý scenár začína scenárom: za ktorým nasleduje názov scenára.

Pozadie:

Kľúčové slovo na pozadí vám pomôže pridať do scenára určitý kontext. Môže obsahovať niektoré kroky scenára, ale jediný rozdiel je v tom, že by sa mal spustiť pred každým scenárom.

Dané:

Kľúčové slovo Given sa používa na uvedenie systému do známeho stavu predtým, ako používateľ začne so systémom komunikovať. Môžete však vynechať písanie používateľských interakcií v zadaných krokoch, ak je zadané v kroku „predpoklad“.

Syntax:

Dané
Zadané - testovací krok, ktorý definuje „kontextVzhľadom na to, že som na „/.“

Kedy:

Keď je krokom definovanie akcie vykonanej používateľom.

Syntax:

Kedy
A When - testovací krok, ktorý definuje vykonanú „akciu“Keď vykonám príkaz „Prihlásiť sa“.

Potom:

Použitím kľúčového slova „potom“ je vidieť výsledok po akcii v kroku. Môžete však overiť iba znateľné zmeny.

Syntax:

 Potom
Potom - testovací krok, ktorý definuje „výsledok“.Potom by som mal vidieť „Vitajte Tom“.

A & Ale

Možno dostanete viac, kedy alebo potom.

Syntax:

ale
Ale - ďalší testovací krok, ktorý definuje výsledok „akcie“. “Mal by som však vidieť „Vitajte Tom“.
A - ďalší testovací krok, ktorý definuje vykonanú „akciu“A píšem „EmailAddress“ s „ Táto e-mailová adresa je chránená pred spamovacími robotmi. Ak ju chcete vidieť, musíte mať povolený JavaScript…“

Dané, kedy, potom a, ale sú testovacie kroky. Môžete ich použiť zameniteľne. Tlmočník nezobrazuje žiadnu chybu. Určite však nebudú mať pri čítaní žiadny „zmysel“.

Dôležité pojmy používané v okurke

Zadané Prihlasovacia stránka sa otváraKeď zadám používateľské meno, heslo a kliknem na tlačidlo Prihlásiť saPotom som na domovskej stránke

Uhorky príkladov

Príklad 1:

Funkcia: Funkcia prihlásenia na sociálnej sieti Facebook.Dané: Som používateľom facebooku.Kedy: Zadám používateľské meno ako používateľské meno.A ako heslo zadávam hesloPotom by som mal byť presmerovaný na domovskú stránku facebooku

Vyššie uvedený scenár predstavuje funkciu nazývanú prihlásenie používateľa.

Všetky slová napísané tučným písmom sú kľúčové slová z uhorky.

Gherkin bude analyzovať každý krok napísaný v súbore definície kroku. Kroky sú preto uvedené v súbore funkcií a súbor definície kroku by sa mal zhodovať.

Príklad 2:

Funkcia: Pozadí autentifikácie používateľa:Vzhľadom na to, že používateľ je už na webe registrovaný Scenár:Vzhľadom na to, že sa používateľ nachádza na prihlasovacej stránkeKeď používateľ zadá správnu e-mailovú adresuA užívateľ zadá správne hesloA používateľ klikne na tlačidlo Prihlásiť saPotom by mal byť používateľ autentifikovanýPoužívateľ by mal byť presmerovaný na svoj informačný panelA používateľ by mal dostať správu o úspechu

Najlepšie postupy pri používaní okurky

  • Každý scenár by sa mal vykonať samostatne
  • Každá funkcia by mala byť vykonateľná súčasne
  • Informácie o krokoch by sa mali zobrazovať nezávisle
  • Prepojte svoje scenáre s vašimi požiadavkami
  • Úplne sledujte, aké scenáre by mali byť zahrnuté v dokumente požiadavky
  • Vytvárajte modulárne a ľahko pochopiteľné kroky
  • Skúste skombinovať všetky svoje bežné scenáre

Výhody okurky

  • Uhorka je dostatočne jednoduchá na to, aby ju neprogramátori pochopili
  • Programátori ho môžu použiť ako veľmi solídny základ na začatie testovania
  • Uľahčuje strávenie používateľských príbehov
  • Uhorkový skript ľahko pochopia riadiaci pracovníci a vývojári
  • Gherkin Testing sa zameriava na obchodné požiadavky
  • Značná časť funkčných špecifikácií je napísaná ako príbehy používateľov
  • Na pochopenie malej príkazovej sady Gherkin nemusíte byť odborníkmi
  • Prípady Gherkinovho testu spájajú akceptačné testy priamo s automatizovanými testami
  • Štýl písania testovacích prípadov je jednoduchšie na opätovné použitie kódu v iných testoch

Nevýhody okurky

  • Vyžaduje si to vysokú úroveň obchodnej angažovanosti a spolupráce
  • Možno nebude fungovať dobre vo všetkých scenároch
  • Zle napísané testy môžu ľahko zvýšiť náklady na údržbu testov

Zhrnutie:

  • Uhorka je formátom pre špecifikácie uhoriek
  • Gherkin je jazyk zameraný na riadky, rovnako ako YAML a Python
  • Gherkin Scripts spája ľudský koncept príčiny a následku so softvérovým konceptom vstupu / procesu a výstupu
  • Funkcia, pozadie, scenár, dané, kedy, potom a Ale sú v Gherkinovi dôležito použité
  • V prípade Gherkin by sa mal každý scenár vykonať osobitne
  • Najväčšia výhoda hry Gherkin je dosť jednoduchá na to, aby ju neprogramátori pochopili
  • Gherkinov test nemusí fungovať dobre vo všetkých typoch scenárov