För varje gurkaprojekt finns det en enda katalog i projektets rot som heter " features ". Det är här alla dina gurkafunktioner finns. I den här katalogen hittar du ytterligare kataloger, som är step_definition och supportkataloger
Vad är "Feature File"?
Funktionsfilen innehåller högnivåbeskrivning av testscenariot på ett enkelt språk. Det är känt som Gherkin. Gurka är ett vanligt engelskspråk
Feature File består av följande komponenter -
- Funktion : En funktion beskriver det nuvarande testskriptet som måste köras.
- Scenario : Scenario beskriver stegen och förväntat resultat för ett visst testfall.
- Scenario disposition : Samma scenario kan köras för flera datauppsättningar med hjälp av scenariot. Uppgifterna tillhandahålls av en tabellstruktur åtskild av (II).
- Givet : Den anger sammanhanget för texten som ska köras. Genom att använda datatabeller "given" kan steg också parametreras.
- När : "När" anger teståtgärden som måste utföras
- Sedan : Det förväntade resultatet av testet kan representeras av "Då"
Exempel på exempelfunktionsfil:
Feature: Besök karriärhandbokssidan i career.guru99.com Scenario: Besök career.guru99.com Givet: Jag är på career.guru99.com När: Jag klickar på karriärguiden-menyn Sedan: Jag ska se sidan karriärguide
Vad är "Step Definition"?
Stegdefinition kartlägger testfallstegen i funktionsfilerna (introduceras av given / när / därefter) till kod. Den som utför stegen på Application Under Test och kontrollerar resultaten mot förväntade resultat. För att en stegdefinition ska kunna utföras måste den matcha den givna komponenten i en funktion. Stegdefinition definieras i rubinfiler under "features / step_definitions / * _ steps.rb".
Exempel på stegdefinition : Här kommer vi ovanstående exempel på surfa karriär.guru99.com göra Vi kommer att använda funktioner som "När, då, givet"
Steg 1:Angivet (/ Jag är på career.guru99.com $ /) görBrowser.goto "http://career.guru99.com" -Detta kommer att besöka career.guru99 i webbläsarenslutetSteg 2:När (/ klicka på menyn karriärguide $ /) görBrowser.text (: namn, "karriärguide") .klick - Detta kommer att klicka på "menyn karriärguide"slutetSteg 3:Sedan (/ jag ska se karriärguiden sida $ /) görBrowser.goto "http://career.guru99.com/category/career-guide/" - Det kommer att besöka "karriärguidesidan"slutet
Sammanfattning:
- Du behöver två filer - funktioner och stegdefinition för att utföra ett Cucmber-testscenario
- Funktionsfilen innehåller högnivåbeskrivning av testscenariot på ett enkelt språk
- Stegdefinitionsfil innehåller den verkliga koden för att utföra testscenariot i Funktionsfilen.