Hvad er Cucumber Funktionsfil og trindefinition? (Eksempel)

For hvert agurkeprojekt er der en enkelt mappe i roden af ​​projektet med navnet "funktioner“. Det er her alle dine agurketræk vil være. I denne mappe finder du yderligere mapper, dvs step_definition og supportmapper

Hvad er "Funktionsfil"?

Funktionsfilen indeholder en beskrivelse af testscenariet på højt niveau i et enkelt sprog. Det er kendt som Sylteagurk. Gherkin er et almindeligt engelsk tekstsprog

Cucumber Feature File består af følgende komponenter –

  • Feature: En funktion vil beskrive det aktuelle testscript, som skal udføres.
  • Scenario: Scenario beskriver trinene og det forventede resultat for en bestemt testcase.
  • Scenarieoversigt: Samme scenarie kan udføres for flere sæt data ved hjælp af scenarieoversigt. Dataene leveres af en tabelstruktur adskilt af (II).
  • I betragtning af: Det specificerer konteksten for den tekst, der skal udføres. Ved at bruge datatabeller "Given", kan trin også parametreres.
  • Hvornår: "Hvornår" angiver den testhandling, der skal udføres
  • Derefter: Det forventede resultat af testen kan repræsenteres af "Derefter"

Dernæst vil vi lære, hvordan man skriver Feature File i Cucumber med eksempel.

Eksempel på funktionsfil:

Feature: Visit career guide page in career.guru99.com
Scenario: Visit career.guru99.com
Given: I am on career.guru99.com
When: I click on career guide menu
Then: I should see career guide page

Cucumber Grundlæggende

Hvad er "trindefinition"?

Trindefinition kortlægger testcase-trinene i feature-filerne (introduceret af Given/When/Then) 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 er defineret i ruby-filer under "features/step_definitions/*_steps.rb".

Eksempel på trindefinition: Her vil vi bruge ovenfor Cucumber Eksempel på funktionsfil på at gennemse career.guru99.com gør Vi vil bruge funktioner som "When, Then, Given" som vist i nedenstående Cucumber Eksempler på Feature File.

Step 1:

Given (/^ I am on career.guru99.com$/) do

Browser.goto "http://career.guru99.com" -This will visit career.guru99 on browser

end

Step 2:
When (/^ click on career guide menu$/) do

Browser.text (:name, " career guide" ).click – This will click "career guide menu"

end
	
Step 3:

Then (/^ I should see career guide page$/) do

Browser.goto "http://career.guru99.com/category/career-guide/" - It will visit "career guide page"

end

Resumé

  • Du skal bruge 2 filer – funktioner og trindefinition for at udføre et Cucmber-testscenarie
  • Funktionsfilen indeholder en beskrivelse på højt niveau af Testscenarie i et enkelt sprog
  • Steps Definition-filen indeholder den faktiske kode til at udføre testscenariet i Features-filen.