Sobes.tech
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.