Gurka (programvara)

Gurka
Utvecklare Aslak Hellesøy, Joseph Wilk, Matt Wynne, Gregory Hnatiuk, Mike Sassak
Stabil frisättning
Edit this on Wikidata 8.10.0 / 28 december 2022; 27 januari 2023
Förvar
Skrivet i Rubin
Operativ system Cross-plattform
Typ Beteendedrivet utvecklingsramverk / Testverktyg
Licens MIT-licens
Hemsida gurka .io

Cucumber är ett mjukvaruverktyg som stöder beteendedriven utveckling (BDD). Centralt för Cucumber BDD-metoden är dess vanliga språktolkare som kallas Gherkin . Det tillåter att förväntade mjukvarubeteenden specificeras på ett logiskt språk som kunderna kan förstå. Som sådan tillåter Cucumber exekvering av funktionsdokumentation skriven i affärsinriktad text. Det används ofta för att testa annan programvara. Den kör automatiska acceptanstester skrivna i en beteendedriven utvecklingsstil (BDD).

Cucumber skrevs ursprungligen i programmeringsspråket Ruby . och användes ursprungligen exklusivt för Ruby-testning som ett komplement till RSpec BDD-ramverket. Cucumber stöder nu en mängd olika programmeringsspråk genom olika implementeringar, inklusive Java och JavaScript . Porten med öppen källkod för Cucumber i .NET heter SpecFlow.

gurka språk

Gurkin är språket som Cucumber använder för att definiera testfall. Den är utformad för att vara icke-teknisk och läsbar för människor, och beskriver tillsammans användningsfall relaterade till ett mjukvarusystem. Syftet bakom Gherkins syntax är att främja beteendedrivna utvecklingsmetoder i ett helt utvecklingsteam, inklusive affärsanalytiker och chefer. Det strävar efter att upprätthålla fasta, entydiga krav med början i de inledande faserna av kravdefinitionen av företagsledningen och i andra skeden av utvecklingens livscykel.

Förutom att tillhandahålla ett skript för automatiserad testning, är Gherkins naturliga språksyntax utformad för att tillhandahålla enkel dokumentation av koden som testas. Gherkin stöder för närvarande nyckelord på dussintals språk.

Syntax

Syntax är centrerad kring en linjeorienterad design , liknande den för Python . Strukturen för en fil definieras med blanksteg och andra kontrolltecken. # används som radkommentarstecken och kan placeras var som helst i en fil. Instruktioner är alla icke-tomma och icke-kommentarrader. De består av ett igenkänt Gherkin nyckelord följt av en sträng.

Alla Gherkin-filer har filtillägget .feature . De innehåller en enda funktionsdefinition för systemet som testas och är ett körbart testskript.

Kommandorad

Cucumber kommer med ett inbyggt kommandoradsgränssnitt som täcker en omfattande lista med instruktioner. Liksom de flesta kommandoradsverktyg tillhandahåller cucumber --help som ger en sammanfattning av argument som kommandot accepterar.






 $  cucumber --help  -r, --require LIBRARY|DIR Kräv filer innan funktionerna körs.  --i18n LANG Lista nyckelord för på ett visst språk.  Kör med "--i18n help" för att se alla språk.  -f, --format FORMAT Hur man formaterar funktioner (Standard: pretty).  -o, --out [FILE|DIR] Skriv utdata till en fil/katalog istället för  ... 

Cucumber kommandoraden kan användas för att snabbt köra definierade tester. Det stöder också att köra en deluppsättning av scenarier genom att filtrera taggar.

 $  gurka --taggar @tagg-namn 

Ovanstående kommando hjälper till att exekvera endast de scenarier som har det angivna @tagg-namnet . Argument kan tillhandahållas som en logisk ELLER- eller OCH -operation av taggar. Förutom taggar kan scenarier filtreras på scenarionamn.

 $  gurka --namn  logga ut 

Kommandot ovan kör endast de scenarier som innehåller ordet "logga ut".

Det är också användbart att kunna veta vad som gick fel när ett test misslyckas. Cucumber gör det enkelt att fånga buggar i koden med --backtrace -alternativet.

externa länkar