Keyword-Driven Automation
Belajar Robot Framework untuk Automation Testing
Robot Framework adalah framework automation berbasis keyword yang dapat diperluas dengan library. Sintaksnya mudah dibaca, tetapi suite yang sehat tetap membutuhkan desain keyword, pemisahan data, assertion yang jelas, dan disiplin struktur. Fokuslah pada keterbacaan perilaku, bukan membuat lapisan keyword sebanyak mungkin.
Lihat kelas yang tersediaPanduan Ini Cocok untuk Siapa?
- Pemula yang tertarik pada pendekatan keyword-driven
- QA yang ingin test mudah dibaca lintas peran
- Tim yang memakai library Robot Framework untuk web, API, atau target lain
Roadmap Belajar Bertahap
-
Langkah 1
Pelajari struktur file
Kenali Settings, Variables, Test Cases, Tasks, dan Keywords serta aturan pemisahan cell pada format teks.
-
Langkah 2
Gunakan library secara langsung
Buat test kecil dengan keyword bawaan atau library yang dipilih sebelum membuat banyak custom keyword.
-
Langkah 3
Bangun keyword berbasis perilaku
Ekstrak alur berulang dengan nama yang menjelaskan tujuan bisnis, lalu simpan resource secara terstruktur.
-
Langkah 4
Kelola eksekusi dan report
Gunakan tag, setup, teardown, variable, output, log, dan report untuk menjalankan serta mendiagnosis suite.
Cara Kerja Robot Framework
Test case disusun dari keyword. Keyword dapat berasal dari framework, library eksternal, resource file, atau kode custom. Pendekatan ini membuat alur mudah dibaca, selama nama keyword konsisten dan tiap keyword memiliki tanggung jawab yang jelas.
Robot Framework adalah kerangka orkestrasi. Kemampuan teknis spesifik—misalnya browser atau API—berasal dari library yang dipilih. Karena itu, pahami dokumentasi library dan jangan menganggap semua keyword tersedia secara bawaan.
- Settings untuk library, resource, setup, dan metadata
- Variables untuk nilai yang berubah antar-environment atau data
- Test Cases untuk perilaku dan assertion utama
- Keywords untuk abstraksi yang benar-benar digunakan ulang
Mendesain Keyword yang Tidak Membingungkan
Keyword yang terlalu rendah level membuat test panjang, sementara keyword yang terlalu abstrak menyulitkan debugging. Gunakan nama yang menjelaskan aksi atau hasil, batasi tanggung jawab, dan hindari keyword yang diam-diam melakukan banyak hal tidak terkait.
- Gunakan nama konsisten dari sudut pandang pengguna atau domain
- Jangan menyembunyikan assertion penting di terlalu banyak lapisan
- Kembalikan nilai ketika data memang dibutuhkan langkah berikutnya
- Pindahkan keyword bersama ke resource file berdasarkan domain, bukan sekadar ukuran file
Menjaga Suite Robot Framework Tetap Terawat
Pisahkan test, resource, variable, dan output. Gunakan tag untuk smoke, regression, atau area produk. Setup dan teardown membantu konsistensi, tetapi jangan memasukkan alur bisnis utama ke dalam setup sehingga test sulit dibaca.
Report dan log bawaan sangat membantu. Saat gagal, temukan keyword pertama yang menyimpang, lalu periksa data, locator, dan kondisi environment pada titik tersebut.
- Simpan output di direktori yang tidak tercampur dengan source
- Jalankan subset test menggunakan tag saat melakukan iterasi
- Gunakan variable file untuk konfigurasi, tanpa menyimpan secret di repository
- Buat custom library hanya ketika keyword biasa tidak lagi memadai
Project Latihan Robot Framework
Pilih satu library dan satu target terlebih dahulu. Tujuan awalnya adalah memahami alur keyword, argument, variable, assertion, dan report—bukan menggabungkan semua jenis automation dalam satu suite.
- Suite form sederhana dengan validasi sukses dan gagal
- Data-driven test menggunakan template atau variable
- Resource file untuk alur login yang digunakan beberapa test
- Eksekusi berdasarkan tag dan penyimpanan report sebagai artifact CI
Pertanyaan yang Sering Ditanyakan
Apakah Robot Framework berarti tidak perlu coding?
Sintaks test utamanya bersifat keyword-driven, tetapi logika, debugging, struktur, dan penggunaan library tetap membutuhkan pemahaman teknis. Custom library juga dapat memerlukan kode.
Apakah Robot Framework hanya untuk web testing?
Tidak. Target automation bergantung pada library yang digunakan. Robot Framework dapat mengorkestrasi berbagai jenis test atau task selama tersedia library atau integrasi yang sesuai.
Kapan perlu membuat custom keyword?
Buat ketika sebuah perilaku berulang, memiliki nama yang bermakna, atau perlu menyederhanakan detail teknis. Hindari membuat keyword satu baris hanya untuk membungkus setiap keyword library tanpa nilai tambahan.
Bagaimana cara mencegah suite menjadi sulit dirawat?
Jaga keyword tetap fokus, kelompokkan resource berdasarkan domain, pisahkan konfigurasi dan data, gunakan tag dengan konsisten, serta refactor saat duplikasi benar-benar terlihat.