Belajar Selenium - Ecosystem & Tools
Episode 21 of 23

Belajar Selenium - Ecosystem & Tools

Episode ini membahas ekosistem di sekitar Selenium: cloud platform seperti BrowserStack dan Sauce Labs, framework reporting seperti TestNG dan Allure, Selenium IDE untuk record dan playback, sumber daya komunitas, serta cara memperluas Selenium dengan library lain.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Pendahuluan

Selenium tidak bekerja sendirian. Di sekitarnya ada ekosistem besar yang membuat hidup test engineer lebih mudah: cloud platform untuk browser lintas perangkat, framework reporting untuk laporan yang indah, Selenium IDE untuk eksperimen cepat, dan komunitas yang menjaga pengetahuan tetap hidup. Episode 21 memetakan ekosistem tersebut.

Memahami ekosistem bukan sekadar tahu nama tool. Ini tentang tahu tool apa yang menyelesaikan masalah apa, kapan menggunakannya, dan bagaimana semuanya bisa berjalan bersama dalam satu pipeline test yang sehat.

Cloud Platform: BrowserStack dan Sauce Labs

Kapan Cloud Platform Diperlukan

Cloud platform memberi akses ke ratusan kombinasi browser, OS, dan perangkat tanpa perangkat keras sendiri. Dari episode 14 kalian sudah memakai BrowserStack untuk sesi remote. Ringkasan nilainya:

  • Matrix browser besar: Safari, versi lama, perangkat mobile nyata.
  • Skalabilitas: sesi paralel dalam jumlah besar tanpa memelihara node.
  • Video dan log sesi: rekaman kegagalan untuk analisis tim.

Keduanya mengikuti pola yang sama: webdriver.Remote dengan capabilities, seperti yang dibahas di episode 14 dan 17. Pilih berdasarkan harga, dukungan, dan kebiasaan tim.

Framework Reporting: TestNG dan Allure

Allure dengan pytest

Allure mengubah laporan test menjadi halaman yang mudah dijelajahi dengan history, grafik, dan lampiran. Integrasi dengan pytest cukup singkat:

Install allure-pytest
pip install allure-pytest

Setelah pip install allure-pytest, jalankan test dengan opsi allure:

Generate laporan Allure
pytest tests --alluredir=allure-results
allure generate allure-results -o allure-report

pytest tests --alluredir=allure-results menyimpan hasil dalam format yang dipahami Allure, lalu allure generate membangun laporan HTML. Buka allure-report/index.html untuk melihat ringkasan lengkap.

Menambahkan Konteks ke Laporan

Beri laporan konteks yang membantu debugging:

PythonLampirkan bukti ke Allure
import allure
 
 
def test_login():
    with allure.step("Buka halaman login"):
        driver.get("https://app.example.com/login")
    with allure.step("Isi kredensial"):
        halaman.isi_email("user@example.com")
    allure.attach(
        driver.get_screenshot_as_png(),
        name="screenshot",
        attachment_type=allure.attachment_type.PNG,
    )

allure.step(...) membagi test menjadi langkah yang bisa diperluas di laporan, dan allure.attach(...) menempelkan screenshot langsung ke hasil. TestNG memainkan peran serupa di ekosistem Java, dengan anotasi dan assertion yang khas.

Selenium IDE: Record dan Playback

Konsep Dasar

Selenium IDE adalah ekstensi browser untuk record dan playback — cara tercepat membuat prototype test tanpa menulis kode. Kalian melakukan aksi di browser, IDE merekamnya menjadi langkah-langkah, lalu memutarnya kembali.

Kapan Selenium IDE Berguna

Selenium IDE bukan pengganti Selenium WebDriver untuk suite serius, tapi sangat berguna untuk:

  • Eksplorasi cepat: merekam alur untuk memahami apa yang harus diotomasi.
  • Prototype: memvalidasi bahwa sebuah alur bisa diotomasi sebelum menulis kode.
  • Kontribusi non-engineer: anggota tim QA yang tidak menulis kode bisa menangkap alur bug.
Siklus Selenium IDE
record -> validate -> export ke Python -> refine dengan POM

record -> validate -> export ke Python -> refine dengan POM adalah siklus praktis: rekam di IDE, pastikan berjalan, ekspor sebagai kode, lalu rapikan dengan pola dari episode 6. IDE mempercepat langkah awal, sementara kode yang rapi menjaga kualitas jangka panjang.

Komunitas dan Best Practice Guides

Sumber Daya Utama

Pengetahuan Selenium berkelanjutan karena komunitasnya. Empat sumber yang kami rekomendasikan:

  • Dokumentasi resmi Selenium — spesifikasi API yang selalu diperbarui.
  • WebDriver W3C spec — protokol yang menjelaskan perilaku browser.
  • Blog dan artikel praktisi — solusi masalah nyata yang jarang ada di docs.
  • Forum dan channel komunitas — tempat bertanya saat menemui masalah yang belum terdokumentasi.

Biasakan mengikuti changelog Selenium — API baru seperti relative locators dan shadow DOM handling sering muncul di rilis minor.

Membangun Pengetahuan Internal

Selain mengonsumsi, bagikan: tulis panduan internal tentang pola yang berhasil, simpan runbook dari episode 19, dan jadikan dokumentasi test sebagai artefak tim. Komunitas yang kuat dibangun dari berbagi, bukan hanya memakai.

Memperluas Selenium dengan Framework dan Library

Wrapper dan Framework di Atas Selenium

Banyak library dibangun di atas Selenium untuk menambah kenyamanan. Contoh yang paling dikenal:

  • SeleniumBase — framework yang menambah command yang lebih ringkas, auto-wait, dan reporting.
  • Pytest-selenium — integrasi fixture dan plugin untuk pytest.
  • WebDriverManager (Java) — manajemen driver otomatis sebelum Selenium Manager ada.
Install SeleniumBase
pip install seleniumbase

Setelah pip install seleniumbase, test bisa memakai sintaks yang lebih pendek dibanding API mentah. Evaluasi dengan bijak: wrapper menambah kemudahan tapi juga menambah lapisan abstraksi — pastikan nilainya sepadan untuk tim kalian.

Memilih Tools Sesuai Kebutuhan

Prinsip pemilihan tool berlaku di seluruh ekosistem: mulai dari kebutuhan, bukan dari hype. Tulis daftar masalah yang dihadapi, lalu pilih tool yang menyelesaikan masalah itu dengan overhead paling kecil.

Info

Jangan menumpuk tool tanpa alasan. Setiap tool baru menambah beban belajar dan pemeliharaan. Ekosistem yang sehat adalah yang setiap komponennya punya peran yang jelas.

Penutup

Episode 21 memetakan ekosistem Selenium: cloud platform untuk matriks browser, Allure dan TestNG untuk reporting, Selenium IDE untuk eksplorasi cepat, komunitas untuk pengetahuan, dan library seperti SeleniumBase untuk kenyamanan tambahan.

Inti yang harus dibawa pulang:

  • Cloud platform menyelesaikan masalah matriks browser dan perangkat.
  • Allure mengubah hasil pytest menjadi laporan yang mudah dijelajahi.
  • Selenium IDE cocok untuk eksplorasi dan prototype, bukan suite produksi.
  • Ikuti dokumentasi resmi dan komunitas untuk pengetahuan yang berkelanjutan.
  • Tambah library eksternal hanya jika menyelesaikan masalah nyata.

Di episode 22 selanjutnya — episode terakhir — kita akan membahas future-proofing selenium skills — menjaga suite tetap maintainable saat aplikasi web berevolusi, mengadopsi praktik browser automation modern, kapan mengombinasikan Selenium dengan Playwright atau Cypress, serta best practice untuk automasi yang berkelanjutan.

Belajar Selenium - Ecosystem & Tools | Belajar Selenium