Nima Xulq-atvorga asoslangan ishlab chiqish
Xulq-atvor spetsifikatsiyalariga asoslangan ishlab chiqish
BDD (Behavior-Driven Development)
BDD — TDD ni biznes tushunishi mumkin bo'lgan tilda tizim xulq-atvorini tavsiflash bilan birlashtirgan dasturiy ta'minot ishlab chiqish metodologiyasi.
Given/When/Then Sintaksisi
| Kalit so'z | Maqsad | Misol | |------------|--------|-------| | Given | Boshlang'ich holat | Autentifikatsiya qilingan foydalanuvchi berilgan | | When | Harakat | "Sotib olish" tugmasini bosganda | | Then | Kutilgan natija | Mahsulot savatga qo'shiladi | | And | Qo'shimcha shartlar | Va bildirishnoma ko'rsatiladi |
Stsenariy Misoli (Gherkin)
Feature: Xarid Savati
Scenario: Savatga mahsulot qo'shish
Given foydalanuvchi mahsulot sahifasida
And mahsulot mavjud
When foydalanuvchi "Savatga qo'shish" tugmasini bosadi
Then mahsulot savatda paydo bo'ladi
And savat hisoblagichi 1 ga oshadi
BDD vs TDD
| Jihat | TDD | BDD | |-------|-----|-----| | Fokus | Kod va birliklar | Tizim xulq-atvori | | Til | Texnik | Biznes tili | | Ishtirokchilar | Dasturchilar | Jamoa + biznes | | Hujjatlashtirish | Kod sifatida testlar | Jonli hujjatlar |
Mashhur Vositalar
- Cucumber — Ruby, Java, JS
- SpecFlow — .NET
- Behave — Python
- Jest + Cucumber — JavaScript
- Behat — PHP