Berkenalan dengan BDD, Cucumber, dan Gherkin

Behavior Driven Development (BDD)

Saya mencoba menyimpulkan dari beberapa referensi yang saya baca dan pelajari, apa itu Behaviour Driven Development? Adalah sebuah metode pengembangan yang fokus pada perilaku sistem dimana hal-hal yang Stakeholder/Customer harapkan dapat dilakukan oleh suatu sistem.

Metode BDD menjembatani gap antara business people and technical people.

Jika sebuah tim menerapkan metode BDD maka terdapat 3 hal:

  1. Context (starting state)
  2. Event (apa yang user lakukan)
  3. Outcome (apa yang diharapkan)

Contoh kasus penerapan 3 hal di atas adalah membuat aplikasi PPDB (Penerimaan Peserta Didik Baru) online untuk sebuah SMA X:

  1. Context (starting state)
    – Terdapat URL web
    – Form registrasi
    – Kuota registrasi
  2. Event (apa yang user lakukan)
    – Peserta didik SMP melakukan pendaftaran.
  3. Outcome (apa yang diharapkan)
    – URL web dapat diakses
    – Peserta didik dapat mengisi form registrasi
    – Konfirmasi peserta didik SMP sudah terdaftar
    – Sistem akan dipastikan mengurangi kuota sebanyak yang mendaftar

Setelah menerima semacam kriteria sistem seperti di atas, maka tim mulai membuat aplikasi PPDB online sesuai kondisi-kondisi di atas. Karena itu, tim akan melakukan serangkaian behaviour test untuk memastikan aplikasi yang dibangun bekerja seperti yang diharapkan.

Cucumber

Untuk melakukan serangkaian behaviour test, ada sebuah tool yang disebut Cucumber. Cucumber adalah sebuah tool yang mendukung BDD.

Cucumber membaca semacam ketentuan yang dapat dieksekusi, dimana ditulis menggunakan teks biasa dan ketentuan tersebut memvalidasi bahwa sistem atau aplikasi melakukan apa yang dituliskan dalam ketentuan tersebut. Ketentuan tersebut terdiri dari beberapa skenario.

Gherkin

Skenario-skenario itu ditulis dalam sebuah tata bahasa yang disebut Gherkin. Jadi Gherkin adalah aturan tata bahasa yang membuat teks dengan struktur tertentu dapat dipahami oleh Cucumber.

Contoh skenario menggunakan Gherkin:

Scenario: User want to access PPDB online registration form
Given User access the PPDB online website
When The PPDB online website is displayed
Then User fill all registration form
Then User submit the registration data

Dokumen skenario yang ditulis menggunakan tata bahasa Gherkin tersebut di atas disimpan dengan file berekstensi .feature.

Gherkin Keyword

Primary KeywordSecondary Keyword
Feature:@
Scenario:#
Given“”
When|
Then
And
But
Background
Scenario Outline:
Examples:

Referensi

Leave a comment