For hvert agurkeprojekt er der en enkelt mappe ved roden af projektet med navnet " features ". Det er her, hvor alle dine agurkfunktioner ligger. I denne mappe finder du yderligere mapper, som er step_definition og supportmapper
Hvad er "Feature File"?
Funktionsfil indeholder beskrivelse på højt niveau af testscenariet på simpelt sprog. Det er kendt som agurk. Agurk er et almindeligt engelsk tekstsprog
Funktionsfil består af følgende komponenter -
- Funktion : En funktion beskriver det aktuelle test script, som skal udføres.
- Scenarie : Scenarie beskriver trinene og det forventede resultat for en bestemt testsag.
- Scenariooversigt : Samme scenarie kan udføres for flere datasæt ved hjælp af scenarieoversigt. Dataene leveres af en tabelstruktur adskilt af (II).
- Givet : Det specificerer konteksten for den tekst, der skal udføres. Ved at bruge datatabeller "given" kan trin også parametriseres.
- When : "When" angiver den testhandling, der skal udføres
- Derefter : Det forventede resultat af testen kan repræsenteres af "Så"
Eksempel på eksempelfunktionsfil:
Feature: Besøg karrierevejledningssiden i career.guru99.com Scenarie: Besøg career.guru99.com givet: Jeg er på career.guru99.com Hvornår: Jeg klikker på karrierevejledningsmenuen Derefter: Jeg skulle se karrierevejledningssiden
Hvad er "trindefinition"?
Trindefinition kortlægger testtilfældetrinene i funktionsfilerne (introduceret af givet / hvornår / derefter) til kode. Det, der udfører trinene på Application Under Test og kontrollerer resultaterne mod forventede resultater. For at en trindefinition kan udføres, skal den matche den givne komponent i en funktion. Trindefinition defineres i rubinfiler under "features / step_definitions / * _ steps.rb".
Eksempel på trindefinition: Her vil vi ovenstående eksempel på browsing career.guru99.com gøre. Vi bruger funktioner som "Hvornår, derefter, givet"
Trin 1:Gitt (/ Jeg er på career.guru99.com $ /) gørBrowser.goto "http://career.guru99.com" -Dette vil besøge career.guru99 i browserenendeTrin 2:Når (/ klik på karrierevejledningsmenuen $ /) gørBrowser.text (: navn, "karrierevejledning"). Klik - Dette klikker på "menuen karrierevejledning"endeTrin 3:Derefter (/ jeg skal se karrierevejledning side $ /) gøreBrowser.goto "http://career.guru99.com/category/career-guide/" - Det vil besøge "karrierevejledningssiden"ende
Resumé:
- Du har brug for 2 filer - Funktioner og trindefinition for at udføre et Cucmber-testscenarie
- Funktionsfil indeholder beskrivelse på højt niveau af testscenariet på simpelt sprog
- Trin Definition-fil indeholder den aktuelle kode til at udføre testscenariet i Features-filen.