Selenium Python WebDriver ile Eğitim (Örnek)

⚡ Akıllı Özet

Selenium 'da Python WebDriver otomasyon kütüphanesini şunlarla eşleştirir: Python Web uygulamalarını test etmek için özlü sözdizimi FirefoxBu kılavuz, Chrome ve Internet Explorer tarayıcılarını yapılandırmayı ele almaktadır. PyDev in EclipseGiriş komut dosyaları yazıyor ve ekiplerin neden bunu tercih ettiğini açıklıyor. Python tekrar Java.

  • 🐍 Python avantajı: Less ayrıntılı sözdizimi, Selenium Komut dosyalarının okunması ve bakımı daha kolaydır.
  • 🌐 Web Sürücüsü: Standart komutları gönderir. FirefoxTarayıcı tasarımından bağımsız olarak Chrome ve IE.
  • 🧩 PyDev Kurmak: kurmak PyDev eklenti Eclipse ve ayarla Python tercüman.
  • 📝 Giriş Komut Dosyaları: Alanları kimlik numarasına göre bulun, tuşları gönderin ve formu otomatik olarak gönderin.
  • Başlık İddiası: WebDriverWait ve assert, oturum açtıktan sonra sayfa başlığını doğrular.
  • 🤖 Yapay Zeka Yardımı: Yapay zeka araçları konum belirleyiciler oluşturur ve Selenium Python Basit komut istemlerinden komut dosyaları.

Selenium Python WebDriver ile ilgili eğitim videosu

Selenium 'da Python

Selenium destekler Python ve böylece şu şekilde kullanılabilir: Selenium Web Sürücüsü Python test etmek için.

  • Python Diğer programlama dillerine kıyasla çok daha az karmaşık sözdizimine sahip olduğu için kullanımı kolaydır.
  • MKS Python API'ler, tarayıcıyla bağlantı kurmanızı sağlar. Selenium.
  • Selenium standardı gönderir Python Farklı tarayıcı tasarımlarına rağmen, farklı tarayıcılara komut gönderme özelliği.

Koşabilirsin Selenium 'da Python için komut dosyaları FirefoxChrome, IE vb. farklı işletim sistemlerinde.

Nedir? Python?

Python üst düzey nesne yönelimli bir kodlama dilidir. Kullanıcı dostu bir şekilde tasarlanmıştır. Python Basit İngilizce anahtar kelimeler kullanır, bu da yorumlamayı kolaylaştırır. Diğerlerine göre daha az sözdizimi karmaşıklığına sahiptir. Programlama dili.

Aşağıdaki tabloda bazı örneklere bakın.

Anahtar kelime anlam kullanım
elif Aksi takdirde Aksi takdirde
başka başka eğer: X; elif: Y; başka: J
dışında Bir hata oluşursa şunu yapın: ValueError dışında, a: yazdır
exec Dizeyi şu şekilde çalıştır: Python exec '“Merhaba Dünya!” Yazdır'

Nedir? Selenium?

Selenium Web uygulamanızı test etmek için kullanılan bir araçtır. Bunu çeşitli şekillerde yapabilirsiniz, örneğin:

  • Düğmelere dokunmasına izin verin.
  • Formlara içerik girin.
  • Her şeyin “tamam” olup olmadığını kontrol etmek için sitenize göz atın.

Nasıl Kurulur ve Yapılandırılır PyDev in Eclipse

PyDev olduğunu Python için geliştirme ortamı Eclipse.

) 1 Adım MyCAD'de yazılım Güncelleme ye git Eclipse Pazaryeri. Yardım > Yeni Yazılım Yükle.

Kurulum ve Yapılandırma PyDev in Eclipse

Sonraki adım, "pydev IDE"yi kurmaktır. Eclipse.

) 2 Adım Bu adımda:

  1. "Çalışma alanı" bölümünde "http://pydev.org/updates" ifadesini arayın ve ardından...
  2. Listelenen tüm öğeleri seçin ve İleri düğmesine iki kez tıklayın.
  3. Lisans Sözleşmesini kabul edin ve Bitir'e tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

) 3 Adım Bir güvenlik uyarısıyla karşılaşabilirsiniz. "Yine de Yükle" seçeneğine tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

) 4 Adım Tercihlerinizi ayarlayın, böylece kullanabilirsiniz. Python Proje ihtiyacına göre. Pencere > Tercihler > yolunu izleyin. PyDev > Tercüman > Python Tercüman.

Kurulum ve Yapılandırma PyDev in Eclipse

Varsayılanı ayarla Python Tercüman, tıpkı ayarladığınız gibi Java çalıştırmak için derleyici Java Kodu değiştirmek için, "python/pypy exe için göz at" düğmesine tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

) 5 Adım Bu adımda “yorumlayıcı adını” ve “exe” dosya yolunu verin. Python.

  1. 'Gözat'a tıklayın ve kurulum yaptığınız python.exe'yi bulun Python.
  2. 'Tamam' düğmesini tıklayın.
  3. Tüm klasörleri seçin ve Tamam'a tıklayın.
  4. “Uygula ve Kapat”a tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

) 6 Adım Yeni bir proje oluşturun PythonBu adımda:

  1. Sağ tık PyDev Paket Gezgini > Yeni.
  2. Diğerleri seçeneğini seçin.

Kurulum ve Yapılandırma PyDev in Eclipse

  1. "SeçinPyDev > PyDev Projesi”.
  2. 'İleri' düğmesine basın.

Kurulum ve Yapılandırma PyDev in Eclipse

  1. Projenize bir ad verin.
  2. "Bitir" i tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

Yenisini görebilirsin Python (PyDev) proje oluşturulur.

) 7 Adım 'PyDev Project', yeni bir tane yaratacaksınız Python paketi.

  1. Proje> Yeni>'ye sağ tıklayın PyDev Paket.
  2. Paketinize bir isim verin ve Bitir'e tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

Kurulum ve Yapılandırma PyDev in Eclipse

) 8 Adım Aşağıdaki ekran görüntüsünde de görebileceğiniz gibi, yeni bir paket oluşturuldu.

Kurulum ve Yapılandırma PyDev in Eclipse

Ardından, bir PyDev modül. Modül şunları içerir: Python Başlatma için kullanılan dosyalar, fonksiyonları başka bir modüle aktarılarak programın yeniden yazılmasını önleyebilir.

) 9 Adım Yeni bir tane oluştur PyDev modül. Pakete sağ tıklayın > Yeni > PyDev modülü.

Kurulum ve Yapılandırma PyDev in Eclipse

Modülünüze bir isim verin ve "Bitir"e tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

Boş Şablon'u seçin ve "Tamam"a tıklayın.

Kurulum ve Yapılandırma PyDev in Eclipse

) 10 Adım için kodunuzu yazın Selenium 'da Python Aşağıda gösterildiği gibi.

Kurulum ve Yapılandırma PyDev in Eclipse

Test Komut Dosyaları Nasıl Oluşturulur? Selenium 'da Python

Bu Selenium Web Sürücüsü Python Örneğin, "Facebook giriş sayfası" için otomasyonu şu şekilde gerçekleştirdik: Firefox sürücüsü.

Selenium 'da Python Örnek 1: Facebook'a giriş yapın

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
user_name = "YOUR EMAILID"
password = "YOUR PASSWORD"
driver = webdriver.Firefox()
driver.get("https://www.facebook.com")
element = driver.find_element_by_id("email")
element.send_keys(user_name)
element = driver.find_element_by_id("pass")
element.send_keys(password)
element.send_keys(Keys.RETURN)
element.close()

Anlık görüntü Code

Test Komut Dosyaları Oluşturun Selenium 'da Python

Kodun açıklaması

  • Code 1 hattı: Selenium modülünden webdriver'ı içe aktarın.
  • Code 2 hattı: Selenium modülünden Keys'i içe aktarın.
  • Code 3 hattı: user_name, kullanıcı adının değerini saklamak için kullanılan bir değişkendir.
  • Code 4 hattı: "Password" değişkeni, parolanın değerini saklamak için kullanılacaktır.
  • Code 5 hattı: Başlat “Firefox"onu bir nesne haline getirerek.
  • Code 6 hattı: “driver.get” metodu, belirtilen sayfaya yönlendirme yapar. URLWebDriver, sayfa tamamen yüklenene kadar bekler ve ardından kontrolü komut dosyanıza geri verir.
  • Code 7 hattı: E-posta adresinin yazılacağı metin kutusu öğesini bulun.
  • Code 8 hattı: Değerleri e-posta bölümüne gönderin.
  • Code 9 hattı: Şifre için de aynı şey geçerli.
  • Code 10 hattı: Şifre bölümüne değerleri gönderin.
  • Code 11 hattı: element.send_keys(Keys.RETURN) ifadesi, değerler girildikten sonra Enter tuşuna basar.
  • Code 12 hattı: Kapatın.

Çıktı: Kullanıcı adı olarak “guru99” ve şifre olarak “şifre” girildi.

Test Komut Dosyaları Oluşturun Selenium 'da Python

Facebook sayfasına e-posta ve şifre ile giriş yapılacak. Sayfa açıldı (aşağıdaki resme bakın).

Test Komut Dosyaları Oluşturun Selenium 'da Python

Selenium 'da Python Örnek 2: Facebook'a Giriş Yapın ve Başlığı Kontrol Edin

Bu örnekte, bir giriş sayfası açacağız, gerekli olan "kullanıcı adı" ve "şifre" alanlarını dolduracağız ve sayfa başlığını kontrol edeceğiz.

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
# Step 1) Open Firefox
browser = webdriver.Firefox()
# Step 2) Navigate to Facebook
browser.get("http://www.facebook.com")
# Step 3) Search & Enter the Email or Phone field & Enter Password
username = browser.find_element_by_id("email")
password = browser.find_element_by_id("pass")
submit   = browser.find_element_by_id("loginbutton")
username.send_keys("YOUR EMAILID")
password.send_keys("YOUR PASSWORD")
# Step 4) Click Login
submit.click()
wait = WebDriverWait( browser, 5 )
page_title = browser.title
assert page_title == "Facebook"

Kodun anlık görüntüsü

Test Komut Dosyaları Oluşturun Selenium 'da Python

Kodun açıklaması:

  • Code 1-2. satırlar: Selenium paketlerini içe aktarın.
  • Code 4 hattı: başlat Firefox Bir nesne oluşturarak.
  • Code 6 hattı: Giriş sayfasına (Facebook) ulaşın.
  • Code 8-10. satırlar: Kullanıcı adı, parola giriş kutularını ve gönder düğmesini getirin.
  • Code 11-12. satırlar: Kullanıcı adı ve parola giriş kutularına verileri girin.
  • Code 14 hattı: “Gönder” düğmesine tıklayın.
  • Code 15 hattı: 5 saniyelik zaman aşımı süresiyle bir bekleme nesnesi oluşturun.
  • Code 16 hattı: "Tarayıcı" nesnesinden başlığı yakalayın.
  • Code 17 hattı: Yakalanan başlık dizesini "Facebook" ile test edin.

Neden seçmelisiniz Python tekrar Java in Selenium

Destekleyen birkaç nokta Python tekrar Java ile kullanmak Selenium şunlardır:

  1. Java programlar diğerlerine göre daha yavaş çalışma eğilimindedir Python programları.
  2. Java Blokların başlangıç ​​ve bitiş noktalarında geleneksel destekler kullanır, Python girinti kullanır.
  3. Java statik tip kullanırping, süre Python dinamik olarak yazılmıştır.
  4. Python karşılaştırıldığında daha basit ve daha kompakttır. Java.

SSS

`pip install selenium.modern` komutunu çalıştırın. Selenium ile birlikte gönderilir Selenium Yönetici, uygun tarayıcı sürücüsünü otomatik olarak indirir, bu nedenle manuel chromedriver kurulumuna gerek yoktur.

WebDriver şudur: Selenium Gerçek bir tarayıcıyı çalıştıran ve komutlar gönderen bir arayüz. FirefoxNavigasyonu, tıklamaları ve form girişini kontrol etmek için Chrome veya Edge tarayıcılarını kullanabilirsiniz.

Selenium 4. find_element_by_id kaldırıldı. Bunun yerine By sınıfını kullanın: from selenium.webdriver.common.by import By, ardından driver.find_element(By.ID, “email”).

Örtük bekleme (implicit wait) belirli bir süre boyunca DOM'u sorgular. Açık bekleme (WebDriverWait) ise belirli bir koşul karşılanana kadar bekler. Tahmin edilemeyen zamanlamaları önlemek için bunları karıştırmaktan kaçının.

Hayır. PyDev in Eclipse Bu bir seçenek. Ayrıca koşabilirsiniz de. Selenium Python komut dosyalarında PyCharm, VS Codeveya komut satırından.

Selenium WebDriver destekler FirefoxChrome, Edge, Safari ve Internet Explorer. Aynı şekilde. Python komut dosyası, takas yoluyla bunların üzerinden çalışır.ping sürücü.

Evet. ChatGPT gibi yapay zeka asistanları, sade bir dildeki test açıklamasını şu hale dönüştürür: Selenium Python Kod yazın, konum belirleyiciler önerin ve eski `find_element_by_id` çağrılarını `By` sözdizimine dönüştürün.

Evet. GitHub Copilot, istikrarlı konum belirleyiciler önerir, NoSuchElementException hatalarını açıklar ve dinamik sayfalardaki kararsız testleri azaltmak için açık bekleme süreleri önerir.

Bu yazıyı şu şekilde özetleyin: