onsdag den 4. januar 2012

Baggrundsscenarier i Cucumber

Nogen gange sker det, når man lavet Cucumber feature filer, at man skal demonstrere en egenskab med et antal scenarier der alle starter på samme måde, men slutter forskelligt. I disse tilfælde kan det være en god ide at anvende et baggrunds scenarie.

 Et baggrunds scenarie indeholder en række steps som bliver kørt inden hvert scenarie. Dette kan forkorte hver scenarie for de repetitive steps sådan man kun forholder sig til det der er forskelligt i hvert scenarie, og ikke det man er nød til at gøre for at nå frem til sin egentlige test. 

Forestil dig følgende egenskab: 

 # Language: da 
Egenskab: Velkomst på flere sprog 
    For at kunne tilgodese forskellige sprog og kulturer 
    Som bruger af applikationen 
    Skal jeg få vist en velkomsmeddelelse på mit modersmål. 

  Scenarie: Dansk 
    Givet jeg har en ny Firefox browser 
    Givet jeg navigere til applikationens forside 
    Givet jeg logger ind som “testbruger_1” med password “hemmeligt” 
    Når jeg vælger sproget “Dansk” i sprogvælgeren 
    Så skal velkomst beskeden være “Velkommen” 

  Scenarie: Svensk Givet jeg har en ny forefox browser 
    Givet jeg navigere til applikationens forside 
    Givet jeg logger ind som “testbruger_1” med password “hemmeligt” 
    Når jeg vælger sproget “Svenska” i sprogvælgeren 
    Så skal velkomst beskeden være “Välkomna” 

Og så videre for de ca 40 sprog applikationen understøtter. Pænt meget copy paste arbejde. Hvis vi derimod anveder et baggrunds scenarie kommer det til at se sådan her ud: 

# Language: da 
Egenskab: Velkomst på flere sprog 
    For at kunne tilgodese forskellige sprog og kulturer 
    Som bruger af applikationen 
    Skal jeg få vist en velkomsmeddelelse på mit modersmål. 

Baggrund: 
  Givet jeg har en ny Firefox browser 
  Givet jeg navigere til applikationens forside 
  Givet jeg logger ind som “testbruger_1” med password “hemmeligt” 

  Scenarie: Dansk 
    Når jeg vælger sproget “Dansk” i sprogvælgeren 
    Så skal velkomst beskeden være “Velkommen” 

  Scenarie: Svensk 
    Når jeg vælger sproget “Svenska” i sprogvælgeren 
    Så skal velkomst beskeden være “Välkomna” 

På den snedige måde fik vi reduceret hver enkelt scenarier fra 5 til 2 linjer samt forøgede overskueligheden over hvad der rent faktisk blev testet i den enkelte scenarier betydeligt.

Ingen kommentarer:

Send en kommentar