Buat Pertama Anda Cucumber Naskah (2 Contoh)

โšก Ringkasan Cerdas

Cucumber Eksekusi skrip membantu Anda mengubah skenario Gherkin berbahasa biasa menjadi pengujian otomatis yang dapat dijalankan menggunakan file Definisi Langkah, memungkinkan tim untuk memvalidasi perilaku, berbagi maksud di antara pemangku kepentingan, dan mengirimkan proyek berbasis BDD yang andal. Cucumber or Cucumber-JVM.

  • ๐Ÿฅ’ Dasar-dasar Gherkin: File fitur menjelaskan skenario dalam sintaks Given-When-Then yang dapat dibaca oleh penguji maupun tim bisnis.
  • ๐Ÿ“ Definisi Langkah: Setiap langkah Gherkin dipetakan ke blok kode yang ditulis dalam Ruby, Javaatau bahasa lain yang didukung.
  • โš™๏ธ Pengaturan Proyek: RubyMine atau IDE apa pun dapat menampung folder fitur, folder definisi langkah, dan konfigurasi runner.
  • โœ… Dua Contoh: Skenario perkalian dan sebuah GuruSkenario login demo 99 mendemonstrasikan eksekusi BDD dari ujung ke ujung.
  • ๐Ÿงช Versi Modern: Cucumber-JVM 7.x dan Cucumber Ruby 9.x tetap menjadi rilis stabil terkini yang digunakan di seluruh pipeline CI.

Cucumber Naskah

Dalam tutorial ini, Anda akan membuat Cucumber Skrip untuk menguji dua skenario menggunakan sintaks Gherkin dan file Definisi Langkah. Cucumber adalah kerangka kerja BDD populer yang menghubungkan berkas Fitur dalam bahasa sederhana dengan kode pengujian yang dapat dieksekusi sehingga analis bisnis dan pengembang dapat berkolaborasi pada spesifikasi yang sama.

Cucumber Skrip 1: Kalikan 2 Numbers

Dalam ini dulu Cucumber Sebagai contoh, Anda akan menulis file Fitur sederhana yang mengalikan dua angka, lalu membuat file Definisi Langkah yang sesuai di Ruby. Alur kerja yang sama berlaku jika Anda menggunakan Cucumber-JVM 7.x dengan Java atau Kotlin di IntelliJ IDEA.

Langkah 1) Buka RubyMine Editor melalui Windows menu mulai.

Cucumber Naskah: Kalikan 2 Numbers

Langkah 2) Di RubyMine Editor, klik Buat Proyek Baru.

Cucumber Naskah: Kalikan 2 Numbers

Langkah 3) Pilih lokasi Proyek dan klik โ€œBuat.โ€

Cucumber Naskah: Kalikan 2 Numbers

Langkah 4) Buat direktori file di dalam root proyek untuk file Fitur Anda.

Cucumber Naskah: Kalikan 2 Numbers

Langkah 5) Beri nama direktori tersebut sebagai "fitur". Cucumber Folder ini akan dipindai secara otomatis.

Cucumber Naskah: Kalikan 2 Numbers

Langkah 6) Buat dan simpan file di โ€œfolder Anda/fitur/โ€ dengan nama โ€œnamafile Anda.fiturโ€.

Klik di sini jika video tidak dapat diakses

Cucumber Naskah: Kalikan 2 Numbers

Cucumber Naskah: Kalikan 2 Numbers

Langkah 7) Untuk menjalankan skenario, simpan program berikut di dalam file Feature. Perhatikan bagaimana kata kunci Gherkin seperti Feature, Scenario, Given, When, dan Then menjelaskan perilaku pengujian.

Cucumber Naskah: Kalikan 2 Numbers

Code:

Feature: Multiplication 
  I multiply two numbers 
	Scenario: multiply a and b 
	  Given I have variable a 
	  And I have variable b 
      When I multiplication a and b 
      Then I display the Result

Langkah 8) Sekarang jalankan berkas Fitur pertama Anda.

Klik โ€œMulai Command Prompt dengan Rubyโ€.

Cucumber Naskah: Kalikan 2 Numbers

Hasil yang Anda terima ditampilkan di bawah ini.

Cucumber Naskah: Kalikan 2 Numbers

Anda akan melihat kesalahan karena Anda harus menulis file Definisi Langkah yang berpasangan dengan file Fitur.

Langkah 9) Buat file Definisi Langkah untuk file Fitur Anda.

Buat folder baru di editor RubyMine dengan nama โ€œstep_definitionโ€.

Cucumber Naskah: Kalikan 2 Numbers

Cucumber Naskah: Kalikan 2 Numbers

Langkah 10) Simpan file tersebut di โ€œfolder Anda/fitur/definisi_langkahโ€ dengan nama test_step.rb.

Cucumber Naskah: Kalikan 2 Numbers

Cucumber Naskah: Kalikan 2 Numbers

Langkah 11) Tulis kode berikut ke dalam file Definisi Langkah. Setiap blok dipetakan ke langkah Gherkin dari file Fitur.

Cucumber Naskah: Kalikan 2 Numbers

Code :

Given(/^I have variable a$/) do 
  @a = 50
end

And(/^I have variable b$/) do 
  @b = 70 
end

When(/^I multiplication a and b$/) do 
  @mul = @a * @b
end

Then(/^I display the Result$/) do 
  puts "Multiplication of #{@a} and #{@b} is #{@mul}"
end

Langkah 12) Jalankan kembali berkas Fitur tersebut.

Cucumber Naskah: Kalikan 2 Numbers

Hasilnya ditunjukkan di bawah ini.

Cucumber Naskah: Kalikan 2 Numbers

Cucumber Skrip 2: Verifikasi output saat ID Email dimasukkan atau tidak dimasukkan

Pada contoh kedua ini, Anda akan menggunakan Ruby dengan Watir untuk menjalankan browser dan memvalidasi dua skenario pendaftaran pada GuruSitus demo 99. Pola yang sama berlaku jika Anda mengadopsi Cucumber-JVM 7.x dengan Selenium WebDriver dan Java.

Dalam contoh ini kami menggunakan Rubi.

Skenario UjiVerifikasi output saat alamat email TIDAK dimasukkan.

Langkah Tes:

  1. Buka Peramban
  2. pergi Untuk https://demo.guru99.com/
  3. Do tidak masukkan ID Email
  4. Klik Kirim

Skenario UjiVerifikasi output saat alamat email dimasukkan.

Langkah Tes:

  1. Buka Peramban
  2. pergi Untuk https://demo.guru99.com/
  3. Masukkan ID Email
  4. Klik Kirim

Code dalam berkas Fitur:

Feature: guru99 Demopage Login
To Login in Demopage we have to enter login details
Scenario: Register On Guru99 Demopage without email
Given I am on the Guru99 homepage
When enter blank details for Register
Then error email shown
Scenario: Register On Guru99 Demopage with valid email
Given I am on the Guru99 homepage
When enter details for Register
Then login details shown

Code dalam file Definisi Langkah:

require 'watir-webdriver'

require 'colorize'

browser = Watir::Browser.new

Given (/^I am on the Guru99 homepage$/)do

browser.goto "https://demo.guru99.com"

end

When (/^enter blank details for Register$/)do

browser.text_field(:name,"emailid").set(" ")

browser.button(:name,"btnLogin").click

end

Then (/^error email shown$/)do

puts " Email is Required".red

browser.close

end

When (/^enter details for Register$/)do

browser = Watir::Browser.new

browser.goto "https://demo.guru99.com"

browser.text_field(:name,"emailid").set("<a href="mailto:guru99@gmail.com">guru99@gmail.com</a>")

browser.button(:name,"btnLogin").click

end

Then (/^login details shown$/)do

puts " Sucessfully register"

browser.close

end

Jalankan kode tersebut di command prompt dan Anda akan melihat output berikut.

Verifikasi Output Saat ID Email Dimasukkan atau Tidak Dimasukkan

Pertanyaan Umum Demo Slot

File Fitur adalah file teks biasa dengan ekstensi .feature yang menggunakan sintaks Gherkin untuk mendeskripsikan satu fitur aplikasi. File ini mengelompokkan Skenario terkait yang ditulis dengan langkah Given, When, dan Then sehingga pemangku kepentingan non-teknis dapat membaca dan memvalidasi perilaku bersama dengan pengembang.

Setiap langkah Gherkin hanya berupa teks. Cucumber Membutuhkan Definisi Langkah yang memetakan langkah tersebut ke kode yang dapat dieksekusi di Ruby, Java, atau bahasa lain. Tanpa peta ituping, runner melaporkan langkah-langkah yang tidak terdefinisi dan Skenario gagal mengeksekusi logika yang dimaksud.

Cucumber-JVM 7.x adalah versi stabil saat ini dan direkomendasikan untuk pengguna baru. Java dan proyek Kotlin. Cucumber Ruby 9.x tetap menjadi pilihan modern bagi tim Ruby. Kedua rilis tersebut mendukung JUnit 5. Eksekusi paralel, dan penyaringan berbasis tag untuk pipeline CI.

Asisten AI menganalisis user story, kriteria penerimaan, dan cacat historis untuk menyusun Skenario Gherkin dalam format Given-When-Then. Mereka menyarankan kasus batas, jalur alternatif, dan saran tag sehingga tim BDD mencakup lebih banyak perilaku tanpa menghabiskan waktu berjam-jam untuk menulis setiap file Fitur secara manual.

Ya. Alat AI membaca berkas Fitur, mencocokkan setiap langkah Gherkin dengan kode yang ada, dan membuat kerangka metode Definisi Langkah baru dalam Ruby atau JavaMereka menghasilkan kode standar, ekspresi reguler parameter, dan kerangka pernyataan sehingga pengembang hanya perlu menyempurnakan logika bisnis alih-alih menulis setiap fungsi penghubung secara manual.

Ringkaslah postingan ini dengan: