Junior
BDD (Davranış Yönümlü İnkişaf) nədir?
sobes.tech Süni İntellekt
AI-dan cavab
BDD proqram təminatının inkişaf metodologiyasıdır və bütün komanda üzvlərinin (inkişafçılar, sınaqçılar, biznes-analitiklər) sistem tələbləri və davranışını ümumi anlayışa yönəldir. Bu, TDD (Test Driven Development) əsasında inkişaf etdirilmişdir.
BDD-nin əsas xüsusiyyətləri:
- Ümumi iştirak: Funksionallığın müəyyənləşdirilməsi prosesinə bütün maraqlı tərəfləri cəlb edir.
- Təbii dil: Sistemin davranışını təsvir etmək üçün başa düşülən, texniki olmayan dil (tez-tez Gherkin) istifadə edir.
- Nümunələr: Davranışı konkret və real istifadə nümunələri ilə müəyyən edir.
- Avtomatlaşdırma: Davranış ssenariləri avtomatlaşdıra və icra edilə bilən sənəd və regresiya testləri kimi istifadə oluna bilər.
BDD ssenariləri adətən Given-When-Then formatında təsvir edilir:
- Verilmişdir: Sisteminin başlanğıc vəziyyətini təsvir edir.
- Nə zaman: İstifadəçi və ya sistem tərəfindən həyata keçirilən hərəkəti təsvir edir.
- O zaman: Gözlənilən davranış və ya bu hərəkətin nəticəsini təsvir edir.
Gherkin istifadə edilərək yazılmış BDD ssenarisi nümunəsi:
# Xüsusiyyət: Məhsul axtarışı
# İstifadəçi məhsulları adlarına görə tapa bilməlidir.
# Ssenari: Mövcud məhsulun uğurlu axtarışı
Verilmişdir ki, istifadəçi onlayn mağazanın ana səhifəsindədir
Nə zaman istifadəçi "Kitab" sözünü axtarış sahəsinə daxil edir
Və "Axtar" düyməsinə klikləyir
O zaman səhifədə "Kitab" sözünü ehtiva edən məhsulların siyahısı göstərilir
Və tapılan məhsulların sayı sıfırdan çoxdur
BDD-də istifadə olunan alətlər:
BDD-nin üstünlükləri:
- Tələblərin daha yaxşı anlaşılması.
- Qeyri-müəyyən və ya ziddiyyətli tələblərdən yaranan səhvlərin azaldılması.
- Komandalar arasında daha effektiv əməkdaşlıq.
- İcra edilə bilən sənəd.
- Daha stabil və baxımı asan avtomatlaşdırılmış testlər.