Pedoman BDD lan Praktik Paling Apik

BDD (Behaviour Driven Development) minangka metodologi kanggo ngembangake piranti lunak kanthi terus-terusan adhedhasar conto komunikasi antarane pangembang, QA lan BA. Ing artikel iki, kita mbahas sawetara Praktik Paling BDD kanggo entuk bathi paling akeh.

Luwih saka apa wae, tujuan utama metodologi BDD yaiku kanggo nyengkuyung komunikasi ing antarane para pemangku proyek supaya konteks saben fitur bisa dingerteni kanthi bener dening kabeh anggota tim (yaiku pangerten bareng), sadurunge kerja pembangunan diwiwiti. Iki mbantu ngenali skenario utama kanggo saben crita lan uga ngilangi ambiguitas saka syarat.

Ing BDD, Tuladhane diarani Skenario. Skenario kabentuk ing sekitar Konteks-Hasil-Hasil pola lan ditulis ing format khusus sing diarani Gherkin .


Skenario minangka cara kanggo nerangake (ing basa Inggris sing jelas) kepiye fitur tartamtu kudu tumindak ing macem-macem kahanan utawa kanthi paramèter input sing beda.

Amarga Gherkin iku struktural, dadi spesifikasi lan input menyang tes otomatis, mula jenenge 'Spesifikasi Eksekusi'.


Apa file fitur lan apa isine?

File fitur yaiku file teks kanthi .fitur ekstensi, sing bisa dibukak dening editor teks uga bisa diwaca karo alat sing ngerti karo BDD, kayata Timun, JBehave utawa Behat.



File fitur kudu diwiwiti karo konteks fitur (sing intine crita), banjur paling ora siji skenario ing format ing ngisor iki

Fitur: Sawetara teks ringkes durung jelas babagan sing dikarepake

Kanggo mujudake nilai bisnis sing dijenengi
Minangka aktor sistem eksplisit
Aku pengin entuk sawetara asil sing migunani sing luwih target


Skenario: Sawetara kahanan bisnis sing bisa ditemtokake

Diwenehi sawetara precondition
Lan sawetara prasyarat liyane
Nalika sawetara tumindak dening aktor
Lan sawetara tumindak liyane
Lan tumindak liyane
Banjur sawetara asil sing bisa dites diraih
Lan uga ana prekara liya sing bisa dipriksa

Skenario ing file fitur kudu fokus ing 'apa' tinimbang 'kepiye'. Skenario kasebut kudu ringkes lan intine, supaya sing maca bisa cepet ngerti maksud tes tanpa kudu maca akeh langkah sing ora relevan.

Napa kita kudu nulis file fitur

Kaya sing wis kasebut sadurunge, tujuan utama metodologi BDD yaiku nyengkuyung komunikasi ing antarane tim pangiriman. Tujuan file fitur yaiku nyathet skenario sing diajak ngobrol supaya bisa menehi indikasi sepira kerjane kerja ing fitur kasebut. File fitur uga dadi driver kanggo tes otomatis. File fitur uga dadi definisi rampung (DoD), tegese nalika kabeh skenario wis diimplementasikake lan dites kanthi sukses, kita bisa menehi tandha crita yen wis rampung.


Sapa sing kudu nulis file fitur

Ora preduli sapa sing bener nulis / ngetik file fitur, bisa uga ana anggota tim pangiriman, nanging konten (skenario) sing dibahas dening trio Dev-QA-BA minangka bagean penting saka fitur file Entuk pangerten umum babagan fitur minangka elemen utama.

Kapan file fitur kudu ditulis

File fitur kudu ditulis sajrone sesi perawatan crita ing endi rinciane saben crita dirembug. File fitur sing ngemot skenario kudu ditulis sadurunge pembangunan diwiwiti supaya pangembang uga QA duwe pangerten sing jelas babagan maksud crita kasebut. Sampeyan kudu ngerti babagan crita kasebut. Skenario kasebut minangka syarat kanggo pangembangan.

Ngarsane file fitur kudu disimpen

Kudu ana salah sawijining sumber kebenaran sing dadi spesifikasi lan eksekusi otomatis, mula kudu disimpen ing endi wae yen saben anggota tim duwe akses sing gampang.

Ngandika, amarga file fitur minangka driver tes otomatis, mesthine kudu disimpen ing sistem kontrol sumber (GitHub) saengga nganyari update file fitur langsung ditampilake ing tes kasebut.


Kanggo anggota non-teknis sing ora duwe pengalaman karo Git, kita bakal bisa nglakokake file fitur sing garing sing banjur bakal ngasilake dhaptar kabeh skenario sing ana tanpa nggunakake file fitur.

Kepiye cara nulis file fitur

Umume ana rong cara nulis file fitur - Imperatif lan Deklaratif

Imperatif gaya nulis file fitur, verosa banget, ngemot rincian level sithik lan kakehan informasi.

Pro: wong sing maca file fitur bisa tindakake langkah-langkah


Kekurangan: Amarga kakehan rinci, sing maca bisa ilang babagan crita lan tes. File fitur dadi gedhe banget, angel dijaga lan cenderung gagal amarga nganyari UI.

Deklaratif gaya nulis file fitur ringkes lan mung intine, mung ngemot informasi sing relevan babagan crita kasebut.

Pro: Gaya deklaratif luwih bisa diwaca amarga ora ngemot langkah-langkah ing skenario. Maca bisa gampang ngerti ruang lingkup tes lan kanthi cepet ngerti manawa ana unsur kunci sing ilang.