Hva er Atferdsdrevet utvikling
Utvikling basert på atferdsspesifikasjoner
BDD (Behavior-Driven Development)
BDD er en programvareutviklingsmetodikk som kombinerer TDD med systematferdsbeskrivelser på forretningslesbart språk.
Given/When/Then Syntaks
| Nøkkelord | Formål | Eksempel | |-----------|--------|----------| | Given | Starttilstand | Gitt en autentisert bruker | | When | Handling | Når de klikker på "Kjøp" | | Then | Forventet resultat | Så legges varen til i kurven | | And | Tilleggsbetingelser | Og varsling vises |
Scenarioeksempel (Gherkin)
Feature: Handlekurv
Scenario: Legge til vare i kurv
Given bruker er på produktsiden
And varen er på lager
When bruker klikker "Legg i Kurv"
Then varen vises i kurven
And kurvtelleren øker med 1
BDD vs TDD
| Aspekt | TDD | BDD | |--------|-----|-----| | Fokus | Kode og enheter | Systematferd | | Språk | Teknisk | Forretningsspråk | | Deltakere | Utviklere | Team + forretning | | Dokumentasjon | Tester som kode | Levende dokumentasjon |
Populære Verktøy
- Cucumber — Ruby, Java, JS
- SpecFlow — .NET
- Behave — Python
- Jest + Cucumber — JavaScript
- Behat — PHP