Selenium Webdriver dengan Python: Tutorial dengan Contoh

Daftar Isi:

Anonim

Selenium mendukung Python dan dengan demikian dapat digunakan sebagai Selenium WebDriver dengan Python untuk pengujian.

  • Python mudah dibandingkan dengan bahasa pemrograman lain, memiliki verbose yang jauh lebih sedikit.
  • Python API memberdayakan Anda untuk terhubung dengan browser melalui Selenium.
  • Selenium mengirimkan perintah Python standar ke browser yang berbeda, meskipun ada variasi dalam desain browser mereka.

Anda dapat menjalankan Selenium dengan skrip Python untuk Firefox, Chrome, IE, dll. Pada Sistem Operasi yang berbeda.

Dalam tutorial Selenium Python ini, Anda akan belajar-

  • Apa itu Python?
  • Apa itu Selenium?
  • Mengapa memilih Python daripada Java di Selenium
  • Cara Menginstal dan Mengkonfigurasi PyDev di Eclipse
  • Cara Membuat Skrip Tes di Selenium dengan Python

Apa itu Python?

Python adalah bahasa skrip berorientasi objek tingkat tinggi. Ini dirancang dengan cara yang ramah pengguna. Python menggunakan kata kunci bahasa Inggris sederhana, yang mudah ditafsirkan. Ini memiliki komplikasi sintaks yang lebih sedikit daripada bahasa pemrograman lainnya.

Lihat beberapa contoh pada tabel di bawah.

Kata kunci Berarti Pemakaian
elif Lain jika Lain jika
lain Lain jika: X; elif: Y; lain: J
kecuali lakukan ini, Jika terjadi pengecualian, kecuali ValueError, a: print a
eksekutif Jalankan string sebagai Python exec 'print "halo dunia!"'

Apa itu Selenium?

Selenium adalah alat untuk menguji aplikasi web Anda. Anda dapat melakukan ini dengan berbagai cara, misalnya

  • Izinkan untuk mengetuk tombol
  • Masukkan konten dalam struktur
  • Telusuri situs Anda untuk memeriksa apakah semuanya "OK" dan seterusnya.

Mengapa memilih Python daripada Java di Selenium

Beberapa poin yang mendukung Python daripada Java untuk digunakan dengan Selenium adalah,

  1. Program Java cenderung berjalan lebih lambat dibandingkan dengan program Python.
  2. Java menggunakan tanda kurung tradisional untuk memulai dan mengakhiri blok, sedangkan Python menggunakan lekukan.
  3. Java menggunakan pengetikan statis, sedangkan Python diketik secara dinamis.
  4. Python lebih sederhana dan lebih kompak dibandingkan dengan Java.

Cara Menginstal dan Mengkonfigurasi PyDev di Eclipse

PyDev adalah lingkungan pengembangan Python untuk Eclipse.

Langkah 1) Pergi ke Eclipse Marketplace. Bantuan> Instal Perangkat Lunak Baru

Langkah selanjutnya adalah menginstal "pydev IDE" untuk eclipse.

Langkah 2) Pada langkah ini,

  1. Telusuri "http://pydev.org/updates" di Bekerja dengan lalu
  2. Pilih semua Item yang terdaftar dan klik Next dua kali
  3. Terima Perjanjian Lisensi dan klik Selesai.

Langkah 3) Anda mungkin menemukan Peringatan Keamanan, Klik "Instal Saja".

Langkah 4) Sekarang , pada langkah ini Anda akan mengatur preferensi. Dengan bantuan opsi preferensi, Anda dapat menggunakan Python sesuai kebutuhan proyek.

Buka Window> Preferences> PyDev> Interpreter> Python Interpreter.

Mari kita setel Python Interpreter default. Ini seperti Anda perlu mengatur compiler java untuk menjalankan kode Java. Untuk mengubah nama juru bahasa, klik tombol Browse for python / pypy exe.

Langkah 5) Pada langkah ini, berikan "nama juru bahasa" dan jalur file "exe" dari Python.

  1. Klik 'Browse' dan temukan python.exe tempat Anda menginstal Python.
  2. Klik tombol 'OK'.
  3. Pilih semua Folder dan klik OK
  4. Klik "Terapkan dan Tutup".

Langkah 6) Buat Proyek Baru dengan Python. Dalam langkah ini,

  1. Klik kanan PyDev Package Explorer> New.
  2. Pilih opsi lainnya.

  1. Pilih "PyDev> Proyek PyDev".
  2. Tekan tombol 'Next'.

  1. Beri nama Proyek Anda
  2. Klik "Selesai".

Anda dapat melihat proyek Python (PyDev) baru dibuat.

Langkah 7) Pada langkah ini,

Setelah membuat 'Proyek PyDev', Anda akan membuat paket Python baru.

  1. Klik kanan pada Project> New> PyDev Package.
  2. Beri nama Paket Anda dan Klik Selesai.

Langkah 8) Jika Anda melihat gambar di bawah ini, paket baru dibuat.

Setelah membuat paket baru, langkah selanjutnya adalah membuat Modul createPyDev. Modul ini berisi beberapa file Python untuk inisialisasi. File atau fungsi dari modul ini dapat diimpor ke modul lain. Jadi, tidak perlu menulis ulang program lagi.

Langkah 9) Buat modul PyDev baru. Klik kanan pada package> New> PyDev module.

Beri nama Modul Anda dan klik "Selesai".

Pilih Template Kosong dan Klik "OK".

Langkah 10) Tulis kode Anda untuk Selenium dengan Python seperti yang ditunjukkan di bawah ini

Cara Membuat Skrip Tes di Selenium dengan Python

Dalam contoh Selenium WebDriver dengan Python ini, kami melakukan otomatisasi untuk "halaman login Facebook" menggunakan driver Firefox.

Selenium Python Contoh 1: Login ke Facebook

dari selenium import webdriverdari selenium.webdriver.common.keys import Keysuser_name = "EMAILID ANDA"password = "KATA SANDI ANDA"driver = webdriver.Firefox ()driver.get ("https://www.facebook.com")element = driver.find_element_by_id ("email")element.send_keys (nama_pengguna)element = driver.find_element_by_id ("pass")element.send_keys (kata sandi)element.send_keys (Keys.RETURN)element.close ()

Cuplikan dari Kode

Penjelasan kode

  • Baris kode 1 : Dari impor modul selenium webdriver
  • Baris kode 2 : Dari tombol impor modul selenium
  • Baris kode 3 : User adalah variabel yang akan kita gunakan untuk menyimpan nilai username.
  • Baris kode 4 : Variabel "kata sandi" akan digunakan untuk menyimpan nilai kata sandi.
  • Baris kode 5 : Pada baris ini, kita menginisialisasi "FireFox" dengan membuat objek darinya.
  • Baris kode 6 : "Metode driver.get" akan menavigasi ke halaman yang diberikan oleh URL. WebDriver akan menunggu hingga halaman dimuat sepenuhnya (yaitu, peristiwa "onload" telah dilepaskan), sebelum mengembalikan kontrol ke pengujian atau skrip Anda.
  • Baris kode 7 : Pada baris ini, kita menemukan elemen kotak teks di mana "email" harus ditulis.
  • Baris kode 8 : Sekarang kami mengirimkan nilai ke bagian email
  • Baris kode 9 : Sama untuk kata sandi
  • Baris kode 10 : Mengirim nilai ke bagian kata sandi
  • Baris kode 11 : element.send_keys (Keys.RETURN) digunakan untuk menekan enter setelah nilai dimasukkan
  • Baris kode 12 : Tutup

KELUARAN

Nilai nama pengguna "guru99" dan kata sandi dimasukkan.

Halaman Facebook akan login dengan email dan kata sandi. Halaman dibuka (lihat gambar di bawah)

CONTOH 2: Masuk ke Facebook & Periksa Judul

Dalam contoh ini,

  • Kami akan membuka halaman login.
  • Isi kolom "username" dan "password" yang diperlukan.
  • Periksa Judul Halaman
dari selenium import webdriverdari selenium.webdriver.support.ui impor WebDriverWait# Langkah 1) Buka Firefoxbrowser = webdriver.Firefox ()# Langkah 2) Arahkan ke Facebookbrowser.get ("http://www.facebook.com")# Langkah 3) Cari & Masukkan bidang Email atau Telepon & Masukkan Kata Sandinamapengguna = browser.find_element_by_id ("email")password = browser.find_element_by_id ("pass")submit = browser.find_element_by_id ("loginbutton")username.send_keys ("EMAILID ANDA")password.send_keys ("KATA SANDI ANDA")# Langkah 4) Klik Loginsubmit.click ()wait = WebDriverWait (browser, 5)page_title = browser.titletegaskan page_title == "Facebook"

Cuplikan dari kode

Penjelasan kode:

  • Baris kode 1-2: Impor paket selenium
  • Baris kode 4: Inisialisasi Firefox dengan membuat objek
  • Baris kode 6: Dapatkan halaman login (Facebook)
  • Baris kode 8-10: Ambil nama pengguna, kotak masukan kata sandi dan tombol kirim.
  • Baris kode 11-12: Masukkan data ke dalam kotak masukan nama pengguna dan kata sandi
  • Baris kode 14: Klik pada tombol "Kirim"
  • Baris kode 15: Buat objek tunggu dengan waktu tunggu 5 detik.
  • Baris kode 16: Menangkap judul dari Objek "browser".
  • Baris Kode 17: Menguji string judul yang ditangkap dengan "Facebook"

Ringkasan :

  • Selenium adalah alat otomatisasi berbasis web sumber terbuka.
  • Bahasa Python digunakan dengan Selenium untuk pengujian. Ini jauh lebih tidak bertele-tele dan mudah digunakan daripada bahasa pemrograman lainnya
  • Python API memberdayakan Anda untuk terhubung dengan browser melalui Selenium
  • Selenium dapat mengirim perintah Python standar ke browser yang berbeda, meskipun ada variasi dalam desain browser mereka.