ما هو التطوير المدفوع بالسلوك
التطوير بناءً على مواصفات السلوك
BDD (التطوير المدفوع بالسلوك)
BDD هي منهجية تطوير برمجيات تجمع بين TDD ووصف سلوك النظام بلغة مفهومة للأعمال.
صيغة Given/When/Then
| الكلمة المفتاحية | الغرض | مثال | |------------------|-------|------| | Given | الحالة الأولية | بافتراض وجود مستخدم مصادق عليه | | When | الإجراء | عند النقر على "شراء" | | Then | النتيجة المتوقعة | يُضاف العنصر إلى السلة | | And | شروط إضافية | ويظهر إشعار |
مثال سيناريو (Gherkin)
Feature: سلة التسوق
Scenario: إضافة عنصر إلى السلة
Given المستخدم في صفحة المنتج
And العنصر متوفر
When ينقر المستخدم "أضف إلى السلة"
Then يظهر العنصر في السلة
And يزداد عداد السلة بمقدار 1
BDD مقابل TDD
| الجانب | TDD | BDD | |--------|-----|-----| | التركيز | الكود والوحدات | سلوك النظام | | اللغة | تقنية | لغة الأعمال | | المشاركون | المطورون | الفريق + الأعمال | | التوثيق | الاختبارات ككود | توثيق حي |
الأدوات الشائعة
- Cucumber — Ruby وJava وJS
- SpecFlow — .NET
- Behave — Python
- Jest + Cucumber — JavaScript
- Behat — PHP