Arsitektur Selenium WebDriver: Komponen, Fungsi & Batasan

Diterbitkan: 2020-12-17

Menguji sistem adalah tugas yang menantang, dan tidak ada alat yang mengotomatiskan itu. Salah satu alat yang muncul dalam pikiran untuk penguji otomatisasi adalah Selenium. Jika Anda ingin mempelajari tentang keterampilan pengujian otomatisasi menggunakan Selenium WebDriver , maka, Anda telah datang ke tempat yang tepat. Mari kita mulai.

Daftar isi

Apa itu Selenium?

Selenium adalah alat pengujian otomatisasi sumber terbuka. Alat ini hanya menguji aplikasi berbasis web dan kompatibel dengan beberapa browser dan sistem operasi.

Ada tiga versi utama Selenium:

  • Selenium RC
  • Selenium IDE
  • Selenium Grid

Semua versi ini dirilis pada tahun 2007.

Selenium WebDriver

Sampai tahun 2011, Selenium RC banyak digunakan. Pada pertengahan 2011 Selenium merilis versi baru, WebDriver 2.0. Itu bukan upgrade ke RC tapi alat yang sama sekali berbeda. Bedanya Selenium WebDriver 2.0 memiliki perintah sendiri. Selenium WebDriver versi terbaru adalah 3.14.

Selenium WebDriver Selenium WebDriver

  • Mampu membuat script dinamis.
  • Kompatibel dengan beberapa browser.
  • Menghasilkan laporan dan log.
  • Cepat, karena berkomunikasi langsung dengan browser menggunakan mesin browser.
  • Interaksi kehidupan nyata antara elemen halaman.
  • API Selenium WebDriver jauh lebih sederhana dan tidak mengandung perintah yang membingungkan dan berlebihan.
  • Selenium WebDriver dapat mendukung browser HtmlUnit tanpa kepala.

Ada lima komponen Arsitektur Selenium WebDriver:

  1. Pengikatan Bahasa atau Pustaka Klien Selenium: Ini adalah file Jar, dan ini adalah bahasa yang digunakan untuk menulis kerangka kerja Selenium. Script untuk Selenium ditulis dalam Java, C#, Ruby, Python dan Perl.
  2. Selenium Application Programming Interface (API): API menyediakan seperangkat aturan dan spesifikasi yang dipatuhi oleh setiap bahasa perangkat lunak. Hal ini juga diperlukan untuk berkomunikasi dengan program perangkat lunak lain. Singkatnya, API bertindak sebagai antarmuka antara program perangkat lunak dan saluran komunikasi AC.
  3. Remote WebDriver: Ini adalah kelas implementasi antarmuka WebDriver. Pengembang skrip pengujian menggunakan kelas pada mesin jarak jauh untuk menjalankan skrip pengujian melalui server WebDriver.
  4. JavaScript Object Notation (JSON) Wired Protocol: JSON adalah format ringan yang dapat dipertukarkan data untuk memfasilitasi pertukaran data. Ini mentransfer data antara klien dan server di web. File JSON memiliki ekstensi .json. Protokol kabel JSON mengirimkan data dalam format JSON. Kemudian, server mem-parsing data dan mengeksekusinya. Setelah dieksekusi, server memberikan respons dan mengirimkannya kembali ke klien dalam format JSON.
  5. WebDriver: WebDriver adalah alat yang mengotomatiskan aplikasi web dan memverifikasi bahwa mereka berfungsi seperti yang diharapkan.

Arsitektur Selenium WebDriver

Kami sekarang akan fokus pada Selenium WebDriver Architecture . Selenium WebDriver API memfasilitasi interaksi antara browser dan driver browser. Arsitektur terdiri dari empat lapisan berikut:

  • Perpustakaan Klien Selenium
  • Protokol Kawat JSON
  • Driver Peramban
  • Browser

Bagaimana Selenium WebDriver Bekerja Secara Internal?

Kode untuk Selenium WebDriver ditulis dalam Eclipse Integrated Development Environment (IDE). Ini menggunakan salah satu perpustakaan klien Selenium seperti Java.

Setelah skrip siap, klik Jalankan untuk menjalankan program. Berdasarkan skrip di atas, browser Chrome akan meluncurkan dan menavigasi ke situs web SeleniumHQ.

Gunakan langkah-langkah umum berikut untuk arsitektur internal Selenium WebDriver:

1. Klik Jalankan .

Pustaka klien Selenium berkomunikasi dengan API Selenium.

2. Selenium API mengirimkan perintah bahasa dari level binding ke driver browser.

Komunikasi dilakukan melalui protokol kabel JSON.

3. Selenium API mengirimkan permintaan ke driver browser.

Driver browser menggunakan server HTTP untuk mendapatkan permintaan HTTP.

4. Server HTTP menyaring semua perintah yang diperlukan untuk eksekusi.

Perintah dalam skrip Selenium dijalankan di browser.

5. Server HTTP mengirimkan respons ke skrip pengujian otomatisasi.

Spesifikasi Teknis Selenium WebDriver

  • Sistem Operasi (OS) – Windows, Solaris, Linux dan Mac OS
  • Browser yang Didukung – Internet Explorer, Google Chrome 12.0.712.0 dan yang lebih baru, Safari, Opera 11.5 dan yang lebih baru, Mozilla Firefox, Internet Explorer, HtmlUnit 2.9, Android dan iOS

Fitur Terbaik Selenium WebDriver

  • Dukungan Banyak Peramban – Mendukung hampir semua peramban.
  • Dukungan Banyak Bahasa – Mendukung sebagian besar bahasa pemrograman yang umum digunakan.
  • Kecepatan – Selenium WebDriver lebih cepat dibandingkan dengan alat Selenium Suite lainnya.
  • Perintah Sederhana – Perintah umum digunakan dan diimplementasikan di Selenium WebDriver dengan mudah. Misalnya, untuk meluncurkan browser di Selenium WebDriver, jalankan perintah berikut::
    • Driver WebDriver = baru FirefoxDriver(); (peramban Firefox)
    • Driver WebDriver = ChromeDriver baru(); (peramban Chrome)
    • Driver WebDriver = baru InternetExplorerDriver(); (browser Internet Explorer)
  • Metode dan Kelas – Selenium WebDriver memiliki banyak solusi untuk mengatasi tantangan potensial dalam pengujian otomatisasi.

Baca: Ide & Topik Proyek Selenium

Keterbatasan Selenium WebDriver

  • Selenium WebDriver tidak secara otomatis mendukung browser baru

Karena WebDriver beroperasi pada level OS, setiap browser berkomunikasi dengan OS dalam berbagai cara. Jadi, untuk browser baru, komunikasi dengan OS mungkin berbeda, yang mengakibatkan masalah kompatibilitas. Anda harus memberikan waktu kepada tim Selenium WebDriver Anda untuk membuat browser baru kompatibel dengan Selenium WebDriver .

  • Selenium WebDriver tidak memiliki perintah bawaan untuk menghasilkan file 'Hasil Tes' secara otomatis

Anda harus mengandalkan jendela keluaran lingkungan pengembangan terintegrasi (IDE). Anda juga dapat mendesainnya sendiri menggunakan bahasa pilihan Anda dan menyimpannya sebagai file HTML atau sebagai teks.

Baca Juga: Gaji Pengembang Selenium di India

Mendaftar di Kursus Rekayasa Perangkat Lunak dari Universitas top dunia. Dapatkan Program PG Eksekutif, Program Sertifikat Tingkat Lanjut, atau Program Magister untuk mempercepat karier Anda.

Pikiran Akhir

  • Selenium WebDriver adalah alat yang menguji aplikasi web di berbagai browser.
  • Ini menggunakan bahasa pemrograman yang berbeda.
  • Selenium WebDriver adalah versi yang ditingkatkan dari Selenium RC karena arsitekturnya yang lebih sederhana.
  • Selenium WebDriver memiliki API ringkas.

Jika Anda tertarik untuk mempelajari lebih lanjut tentang pengembangan perangkat lunak tumpukan penuh, lihat Program PG Eksekutif upGrad & IIIT-B dalam Pengembangan Perangkat Lunak Tumpukan Penuh yang dirancang untuk para profesional yang bekerja dan menawarkan 500+ jam pelatihan yang ketat, 9+ proyek, dan penugasan, status Alumni IIIT-B, proyek batu penjuru praktis & bantuan pekerjaan dengan perusahaan-perusahaan top.

Persiapkan Karir Masa Depan

Daftar Sekarang untuk Magister Rekayasa Perangkat Lunak