Linux'ta Selenium Nedir ve Neden Kullanılır?
Selenium, web uygulamalarını test etmek için kullanılan açık kaynaklı bir araçtır. Geliştiriciler ve test uzmanları tarafından web uygulamalarının kullanıcı etkileşimlerini simüle etmek için kullanılır. Ama bu araç, sadece basit testler yapmanın ötesine geçer. Gerçekten güçlüdür ve ihtiyacınız olan her türlü testi yapmanıza olanak sağlar. Python, Java, Ruby ve daha birçok dilde kullanabiliriz, ama biz bu yazımızda Python dilini seçtik. Çünkü Python, çok kolay öğrenilen ve kullanımı oldukça rahat bir dil.
Linux'ta Selenium Kurulumu
İlk adım, Linux sisteminizde Selenium'u çalıştırabilmek için gerekli olan tüm bileşenleri kurmaktır. Bunlar arasında Python, pip (Python'un paket yöneticisi), Selenium kütüphanesi ve son olarak WebDriver yer alır. Endişelenmeyin, bu adımlar oldukça basittir!
Adım 1: Python'ı ve pip'i yükleyin (eğer zaten yüklü değilse).
Terminalinizi açın ve aşağıdaki komutları girin:
sudo apt update
sudo apt install python3 python3-pip
Adım 2: Selenium kütüphanesini yükleyin.
pip install selenium
Adım 3: WebDriver Yükleme.
WebDriver, Selenium'un tarayıcıyı kontrol etmesine olanak tanır. Hangi tarayıcıyı kullanmak istiyorsanız, ona uygun WebDriver'ı indirmeniz gerekecek. Örneğin, Chrome kullanacaksanız, ChromeDriver'ı yüklemelisiniz.
Terminal üzerinden ChromeDriver'ı indirmek için şu komutları kullanabilirsiniz:
wget https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip
unzip chromedriver_linux64.zip
sudo mv chromedriver /usr/local/bin
Artık Linux üzerinde Selenium testlerine başlamak için gerekli tüm araçlara sahipsiniz.
İlk Selenium Testinizi Yazın
Şimdi, basit bir web testini nasıl yazacağınızı görelim. Amacımız, Google ana sayfasını açmak ve başlığını kontrol etmek. İşte bunu nasıl yapacağınız:
from selenium import webdriver
# Tarayıcıyı başlat
driver = webdriver.Chrome()
# Google ana sayfasını aç
driver.get("https://www.google.com")
# Sayfa başlığını al ve kontrol et
assert "Google" in driver.title
print("Test başarılı!")
driver.quit()
Bu basit test, Selenium'un nasıl çalıştığını anlamanızı sağlayacak. Burada kullandığımız `webdriver.Chrome()` komutu, Chrome tarayıcısını başlatıyor. `driver.get()` komutu ise verilen URL'yi açıyor. Testin sonunda `assert` komutuyla, sayfanın başlığının doğru olup olmadığını kontrol ediyoruz.
Selenium İle İleri Düzey Testler
Tabii ki, Selenium sadece basit testler için değil, daha karmaşık test senaryoları için de harika bir araçtır. Form doldurma, buton tıklama, sayfalarda gezinme ve hatta JavaScript ile etkileşim gibi işlemleri simüle edebilirsiniz. İşte biraz daha gelişmiş bir örnek:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("https://www.google.com")
# Arama kutusunu bul
search_box = driver.find_element("name", "q")
# Arama yap
search_box.send_keys("Selenium tutorial")
search_box.send_keys(Keys.RETURN)
# Sonuçların yüklendiğini kontrol et
assert "Selenium" in driver.page_source
print("Arama testi başarılı!")
driver.quit()
Bu örnekte, Google'da arama yapıyoruz. `send_keys()` metodu ile arama kutusuna "Selenium tutorial" yazıp, ardından `Keys.RETURN` komutuyla enter tuşuna basıyoruz. Son olarak, sayfa kaynak kodunda "Selenium" kelimesinin geçtiğini kontrol ediyoruz.
Testleri Otomatikleştirme ve Raporlama
Testlerinizi otomatikleştirmek için, Selenium'un sunduğu birçok özellikten faydalanabilirsiniz. Örneğin, testlerinizi belirli aralıklarla çalıştırmak ve sonuçları raporlamak için CI/CD araçlarını kullanabilirsiniz. Jenkins, Travis CI gibi araçlarla entegrasyon sağlayarak testlerinizi sürekli çalıştırabilirsiniz. Ayrıca, Selenium ile testlerinizin raporlarını oluşturabilir, hangi adımların başarısız olduğunu kolayca görebilirsiniz.
Sonuç
Linux üzerinde Selenium ile otomasyon testleri yapmak, başlangıçta biraz karmaşık görünebilir, ancak aslında oldukça kolaydır. Kurulum ve yapılandırma sürecinden sonra, istediğiniz testleri hızlıca yazabilir ve uygulamanızın doğru çalışıp çalışmadığını güvenle kontrol edebilirsiniz. Bu yazıda, Selenium'un temellerinden başlayarak, ileri düzey kullanım örneklerine kadar pek çok önemli adımı paylaştık. Şimdi sıra sizde! Tarayıcınızla etkileşim kurarak testlerinizi yazmaya başlayın. Unutmayın, otomasyonun gücüyle yazılım testlerinizi çok daha hızlı ve verimli bir hale getirebilirsiniz.