Automation Selenium, Cucumber and Gherkin [Windows]

Hega Putra Pratama
5 min readJun 19, 2017

--

Panduan ini ditujukan bagi seseorang yang tidak atau belum mengenal tentang Selenium,Cucumber, Gherkin dan ingin mencobanya. Akan tetapi sebenarnya tulisan ini saya bagikan lebih ditujukan ke diri saya sendiri agar nantinya tidak lupa apa yang sudah di ajarkan oleh master Ibnu Fajar Yunardi.

Bahan-bahan yang perlu di install :

  1. Ruby (2.3.3 atau di atasnya)
  2. Selenium Webdriver (3.2.1)
  3. Cucumber (2.4.0)
  4. Gherkin (4.1.1)
  5. Text Editor (SublimeText, Atom, Eclipse, Notepad++)
  6. Firefox
  7. CMDer (optional) atau pake CMD biasa juga bisa

Note : Pastikan semua versi dan penempatan folder di cek kembali apakah sudah sesuai atau belum, karena biasanya masalah terjadi di versi dan folder dan jika kalian mengikuti langkah dibawah dengan benar maka tidak akan terjadi masalah

Nah sebelum masuk ke tutorial, kalian harus tahu dulu nih pengertian dan alasan kenapa kalian harus memerlukan hal tersebut, berikut penjelasannya :

Ruby adalah bahasa yang akan kita gunakan untuk menulis kode tes, kalian bisa menggunakan Java atau sejumlah bahasa yang lainnya. Saya suka ruby karena cukup mudah untuk belajar bahasa, tidak memerlukan compiler, dan banyak contoh selenium / gherkin ruby di website dan cucumber pun ditulis di Ruby, kelihatan asyik bukan.

Cucumber dengan gherkin adalah bahasa kerangka pengujian (testing framework), gherkin merupakan bahasa bisnis yang kita gunakan untuk menulis tes dengan cara yang mudah dibaca oleh manusia. Gherkin mengikat file fitur gherkin ke kode eksekusi yang ditulis di Ruby. Yang menarik cucumber juga dapat membantu kita untuk capture hasil tes.

Selenium adalah driver HTTP yang digunakan untuk menavigasi browser dari kode, sehingga kita bisa melakukan testing di browser.

RSpec adalah tes unit kerangka pengembangan berbasis framework untuk bahasa pemrograman Ruby. RSpec berbeda dari kerangka xUnit tradisional seperti JUnit karena RSpec adalah alat pengembangan Perilaku didorong. Apakah ini berarti bahwa, tes tertulis dalam RSpec fokus pada “perilaku” dari aplikasi yang diuji. RSpec tidak menempatkan penekanan pada, bagaimana aplikasi bekerja melainkan pada bagaimana berperilaku, dengan kata lain, aplikasi apa yang sebenarnya.

Berikut penjelasan lewat gambar agar lebih mudah dipahami

Sudah paham? sudah atau belum langsung saja prakteknya biar tidak penasaran. Gak perlu berlama - lama lagi karena bahan dan penjelasan sudah saya berikan diawal, langsung hajar yuk.

Step 1 : Browser Setup — Install firefox

Download dan install firefox disini

Step 2 : Download dan Install Ruby

Gunakan windows Ruby installer, download disini

Note :

Install atau ceklist semua paket

Install ke dalam direktori C:\Ruby bukan di C:\Program Files\Ruby

Download Ruby Development Kit (RDK) dan tempatkan pada direktori Ruby yang sudah kalian download tadi

Lanjut ke printah beriktanya, buka CMD atau CMDer , lalu ketik perintah berikut :

Setelah masuk kedalam direktori, ketik perintah ini untuk inisialisasi

Kemudian, karena kita akan menggunakan kolaborasi antara ruby + selenium web-driver + cucumber maka perlu juga untuk install gem-nya. Ketik perintah berikut untuk installasinya :

Setelah itu kita butuh geckodriver sebagai proxy untuk browser firefox. Download geckodrivernya disini , setelah itu ekstrak file tersebut kedalam direktori “C:\Ruby23-x64\bin”.

Selanjutnya, kita perlu menginialisasi lokasi path geckodriver tersebut:

  • Masuk ke System Properties > Advance System Settings > Environment variables > System Variables > Path > Masukkan alamat folder geckodriver kita tadi.

Step 3 : Bermain dengan Cucumber

Sebelum memulai bermain, kita akan membuat satu projek selenium terlebih dahulu.

  1. Buka CMD atau CMDer, kemudian arahkan ke disk mana yg akan kita buat untuk penyimpanan projek tersebut, disini saya menggunakan direktori D didalam folder “Tes Selenium”

2. Setelah itu, ketikan perintah “cucumber --init“, dan secara otomatis akan membuat folder dan sub folder seperti ini:

3. Nah disini saya memakai text editor Atom + Plugin language gherkin 1.0.4 yang sudah saya install, kemudian Open Folder “Tes Selenium”

4. Buat file dengan nama test.feature didalam folder features

5. Buat file dengan nama steps.rb didalam folder step_definitions

Step 4 : Perkenalan Cucumber dan Gherkin

Sebelum itu, kita isi test.feature dengan scenario awal dulu untuk membuka web browser dan menuju alamat yang kita tulis. Sasaran untuk uji coba kali ini saya menggunakan “youtube”

7. Buka CMD atau CMDer kalian, kemudian kita tuliskan perintah “cucumber” dan lihat apa yang terjadi.

Step 5 : Tuliskan Tes Selenium / Ruby dasar

Selanjutnya, kita salin apa yang berwana kuning tersebut kedalam file steps.rb dan tambahkan juga perintah untuk eksekusi geckonya didalam file tersebut. Hapus tulisan “pending # Write code here that turns the phrase above into concrete actions” kemudian ganti dengan :

Terakhir, ketik “cucumber” di CMD atau CMDer. Jika semua langkah sudah benar maka mozilla firefox akan membuka halaman youtube secara otomatis dan satu scenario dan satu steps sudah berhasil pass.

Dannnn……

Mudah bukan? hehe

Pada kali ini, saya telah memperkenalkan semua kerangka dasar dan bahasa yang dibutuhkan untuk mulai membangun uji tes yang lebih besar. Dalam contoh saya di sini, saya membuat tes otomatis antarmuka pengguna yang sangat sederhana, namu yang perlu diingat bahwa hal ini hanya satu dari strategi otomatis yang juga mencangkup pengujian integrasi dan unit. Jika bermanfaat like dan share ya.

Terimakasih

Hega Putra Pratama

--

--