Selenium menyokong Python dan dengan itu dapat digunakan sebagai Selenium WebDriver dengan Python untuk ujian.
- Python mudah dibandingkan dengan bahasa pengaturcaraan lain, dengan kata-kata yang jauh lebih sedikit.
- API Python memberi kuasa kepada anda untuk berhubung dengan penyemak imbas melalui Selenium.
- Selenium mengirimkan perintah Python standard ke penyemak imbas yang berbeza, walaupun terdapat perbezaan dalam reka bentuk penyemak imbas mereka.
Anda boleh menjalankan Selenium dengan skrip Python untuk Firefox, Chrome, IE, dan lain-lain pada Sistem Operasi yang berbeza.
Dalam tutorial Selenium Python ini, anda akan belajar-
- Apa itu Python?
- Apa itu Selenium?
- Mengapa memilih Python berbanding Java di Selenium
- Cara Memasang dan Mengkonfigurasi PyDev di Eclipse
- Cara Membuat Skrip Ujian di Selenium dengan Python
Apa itu Python?
Python adalah bahasa skrip berorientasikan objek peringkat tinggi. Ia direka dengan cara yang mesra pengguna. Python menggunakan kata kunci bahasa Inggeris yang mudah, yang senang ditafsirkan. Ia mempunyai komplikasi sintaks yang kurang daripada bahasa pengaturcaraan lain.
Lihat beberapa contoh dalam jadual di bawah.
Kata kunci | Makna | Penggunaan |
---|---|---|
elif | Jika tidak | Jika tidak |
yang lain | Lain | sekiranya: X; elif: Y; lain: J |
kecuali | lakukan ini, Sekiranya berlaku pengecualian, | kecuali ValueError, a: print a |
exec | Jalankan rentetan sebagai Python | exec 'print "hello world!"' |
Apa itu Selenium?
Selenium adalah alat untuk menguji aplikasi web anda. Anda boleh melakukan ini dengan pelbagai cara, misalnya
- Biarkan ia menekan butang
- Masukkan kandungan dalam struktur
- Skim laman web anda untuk memeriksa sama ada semuanya "OK" dan sebagainya.
Mengapa memilih Python berbanding Java di Selenium
Beberapa titik yang menyokong Python berbanding Java untuk digunakan dengan Selenium adalah,
- Program Java cenderung berjalan lebih perlahan berbanding dengan program Python.
- Java menggunakan pendakap tradisional untuk memulakan dan mengakhiri blok, sementara Python menggunakan lekukan.
- Java menggunakan penaipan statik, sementara Python ditaip secara dinamik.
- Python lebih ringkas dan ringkas berbanding Java.
Cara Memasang dan Mengkonfigurasi PyDev di Eclipse
PyDev adalah persekitaran pembangunan Python untuk Eclipse.
Langkah 1) Pergi ke Eclipse Marketplace. Bantuan> Pasang Perisian Baru
Langkah seterusnya adalah memasang "pydev IDE" untuk gerhana.
Langkah 2) Dalam langkah ini,
- Cari "http://pydev.org/updates" di Bekerja dengan dan kemudian
- Pilih semua Item yang disenaraikan dan klik pada Next dua kali
- Terima Perjanjian Lesen dan klik Selesai.
Langkah 3) Anda mungkin menghadapi Amaran Keselamatan, Klik "Pasang Bagaimanapun".
Langkah 4) Sekarang , dalam langkah ini anda akan menetapkan pilihan. Dengan bantuan pilihan pilihan, anda boleh menggunakan Python mengikut keperluan projek.
Pergi ke Window> Preferences> PyDev> Interpreter> Python Interpreter.
Mari kita tetapkan Python Interpreter lalai. Sama seperti anda perlu menetapkan penyusun java untuk menjalankan kod Java. Untuk menukar nama jurubahasa, klik pada Browse for python / pypy exe Button.
Langkah 5) Pada langkah ini, berikan "nama jurubahasa" dan laluan fail "exe" Python.
- Klik pada 'Browse' dan cari python.exe tempat anda memasang Python.
- Klik butang 'OK'.
- Pilih semua Folder dan klik OK
- Klik pada "Terapkan dan Tutup".
Langkah 6) Buat Projek Baru di Python. Dalam langkah ini,
- Klik kanan Penjelajah Pakej PyDev> Baru.
- Pilih pilihan yang lain.
- Pilih "PyDev> Projek PyDev".
- Tekan butang 'Seterusnya'.
- Namakan Projek anda
- Klik "Selesai".
Anda dapat melihat projek Python (PyDev) baru dibuat.
Langkah 7) Dalam langkah ini,
Selepas membuat 'Projek PyDev', anda akan membuat pakej Python baru.
- Klik kanan pada Projek> Baru> Pakej PyDev.
- Namakan Pakej anda dan Klik Selesai.
Langkah 8) Sekiranya anda melihat tangkapan skrin di bawah, pakej baru akan dibuat.
Setelah membuat pakej baru, langkah seterusnya adalah membuat ModulPyDev. Modul ini mengandungi beberapa fail Python untuk permulaan. Fail atau fungsi ini dari modul dapat diimport ke modul lain. Jadi, tidak perlu menulis semula program ini lagi.
Langkah 9) Buat modul PyDev baru. Klik kanan pada pakej> Baru> modul PyDev.
Namakan Modul anda dan klik "Selesai".
Pilih Templat Kosong dan Klik "OK".
Langkah 10) Tuliskan kod anda untuk Selenium dengan Python seperti gambar di bawah
Cara Membuat Skrip Ujian di Selenium dengan Python
Dalam contoh Selenium WebDriver dengan Python ini, kami melakukan automasi untuk "halaman log masuk Facebook" menggunakan pemacu Firefox.
Selenium Python Contoh 1: Log masuk ke Facebook
dari pemacu web import seleniumdari selenium.webdriver.common.keys import Keysuser_name = "EMAILID ANDA"kata laluan = "KATA LALUAN ANDA"driver = webdriver.Firefox ()driver.get ("https://www.facebook.com")element = driver.find_element_by_id ("e-mel")element.send_keys (nama_pengguna)element = driver.find_element_by_id ("lulus")element.send_keys (kata laluan)element.send_keys (Kekunci. KEMBALI)element.close ()
Ringkasan Kod
Penjelasan kod
- Baris kod 1 : Dari pemacu web import modul selenium
- Baris kod 2 : Dari Kekunci import modul selenium
- Baris kod 3 : Pengguna adalah pemboleh ubah yang akan kita gunakan untuk menyimpan nilai nama pengguna.
- Baris kod 4 : "Kata laluan" yang berubah-ubah akan digunakan untuk menyimpan nilai kata laluan.
- Baris kod 5 : Dalam baris ini, kita menginisialisasi "FireFox" dengan membuat objek daripadanya.
- Baris kod 6 : "Kaedah driver.get" akan menavigasi ke halaman yang diberikan oleh URL. WebDriver akan menunggu sehingga halaman dimuat sepenuhnya (iaitu, kesempatan "onload" telah dilepaskan), sebelum mengembalikan kawalan ke ujian atau skrip anda.
- Baris kod 7 : Dalam baris ini, kita dapati elemen kotak teks di mana "e-mel" harus ditulis.
- Baris kod 8 : Sekarang kami menghantar nilai ke bahagian e-mel
- Baris kod 9 : Sama dengan kata laluan
- Baris kod 10 : Menghantar nilai ke bahagian kata laluan
- Baris kod 11 : element.send_keys (Keys.RETURN) digunakan untuk menekan enter setelah nilai dimasukkan
- Baris kod 12 : Tutup
PENGELUARAN
Nilai nama pengguna "guru99" dan kata laluan dimasukkan.
Halaman Facebook akan log masuk dengan e-mel dan kata laluan. Halaman dibuka (lihat gambar di bawah)
CONTOH 2: Log masuk ke Facebook & Semak Tajuk
Dalam contoh ini,
- Kami akan membuka halaman log masuk.
- Isi bidang yang diperlukan "nama pengguna" dan "kata laluan".
- Semak Tajuk Halaman
dari pemacu web import seleniumdari selenium.webdriver.support.ui import WebDriverWait# Langkah 1) Buka Firefoxpenyemak imbas = pemacu web.Firefox ()# Langkah 2) Navigasi ke Facebookbrowser.get ("http://www.facebook.com")# Langkah 3) Cari & Masukkan medan E-mel atau Telefon & Masukkan Kata Laluannama pengguna = browser.find_element_by_id ("e-mel")kata laluan = browser.find_element_by_id ("lulus")submit = browser.find_element_by_id ("butang masuk")username.send_keys ("EMAILID ANDA")password.send_keys ("KATA LALUAN ANDA")# Langkah 4) Klik Log Masukhantar.klik ()tunggu = WebDriverWait (penyemak imbas, 5)page_title = browser.titletegaskan halaman_title == "Facebook"
Ringkasan kod
Penjelasan kod:
- Baris kod 1-2: Import pakej selenium
- Baris kod 4: Memulakan Firefox dengan membuat objek
- Baris kod 6: Dapatkan halaman log masuk (Facebook)
- Baris kod 8-10: Ambil nama pengguna, kotak input kata laluan dan butang hantar.
- Baris kod 11-12: Masukkan data ke dalam kotak input nama pengguna dan kata laluan
- Baris kod 14: Klik pada butang "Hantar"
- Baris kod 15: Buat objek tunggu dengan tamat masa 5 saat.
- Baris kod 16: Menangkap tajuk dari Objek "penyemak imbas".
- Baris Kod 17: Menguji rentetan tajuk yang ditangkap dengan "Facebook"
Ringkasan :
- Selenium adalah alat automasi berasaskan web sumber terbuka.
- Bahasa Python digunakan dengan Selenium untuk ujian. Ia mempunyai kata-kata yang jauh lebih rendah dan mudah digunakan daripada bahasa pengaturcaraan lain
- API Python memberi kuasa kepada anda untuk berhubung dengan penyemak imbas melalui Selenium
- Selenium dapat mengirim perintah Python standard ke penyemak imbas yang berbeza, walaupun terdapat perbezaan dalam reka bentuk penyemak imbasnya.