Vad är Beteendedriven utveckling
Utveckling baserad på beteendespecifikationer
BDD (Behavior-Driven Development)
BDD är en mjukvaruutvecklingsmetodik som kombinerar TDD med systembeteendebeskrivningar på affärsläsbart språk.
Given/When/Then Syntax
| Nyckelord | Syfte | Exempel | |-----------|-------|---------| | Given | Initialt tillstånd | Givet en autentiserad användare | | When | Åtgärd | När de klickar på "Köp" | | Then | Förväntat resultat | Så läggs artikeln till i varukorgen | | And | Ytterligare villkor | Och meddelande visas |
Scenarioexempel (Gherkin)
Feature: Varukorg
Scenario: Lägga till artikel i varukorg
Given användare är på produktsidan
And artikeln finns i lager
When användare klickar "Lägg i Varukorg"
Then artikeln visas i varukorgen
And varukorgsräknaren ökar med 1
BDD vs TDD
| Aspekt | TDD | BDD | |--------|-----|-----| | Fokus | Kod och enheter | Systembeteende | | Språk | Tekniskt | Affärsspråk | | Deltagare | Utvecklare | Team + affär | | Dokumentation | Tester som kod | Levande dokumentation |
Populära Verktyg
- Cucumber — Ruby, Java, JS
- SpecFlow — .NET
- Behave — Python
- Jest + Cucumber — JavaScript
- Behat — PHP