Giriş: Neden Otomasyon Testleri?
Hepimiz zaman zaman yazılım geliştirme sürecinde testler yaparken saatlerimizi harcamışızdır. Ancak, her yeni özellik eklediğimizde bu testleri manuel olarak yapmak, verimsiz ve yorucu olabilir. İşte burada otomasyon testleri devreye giriyor. Otomasyon testleri, yazılımın her yeni sürümünde manuel testleri tekrarlamak zorunda kalmadan testlerinizi hızlıca yapmanızı sağlar. Peki, otomasyon testlerini nasıl başlatabiliriz?
Birçok araç var, ama Selenium, özellikle web uygulamaları için en popüler ve güçlü araçlardan biridir. Linux üzerinde Selenium ile otomasyon testleri yaparak, test sürecinizi çok daha hızlı ve verimli hale getirebilirsiniz. Gelin, adım adım bu süreci birlikte keşfedelim.
1. Linux’a Selenium Kurulumu
Selenium'u kullanmaya başlamadan önce, öncelikle doğru araçları kurmanız gerekiyor. Linux ortamında Selenium’u kurmak oldukça kolay. İlk adım olarak, sisteminizde Python’un kurulu olduğundan emin olun. Python kurulu değilse, terminal üzerinden şu komutu kullanarak kurabilirsiniz:
sudo apt update
sudo apt install python3-pip
Sonrasında, pip aracılığıyla Selenium kütüphanesini kuracağız. Terminale şu komutu yazmanız yeterli:
pip3 install selenium
Bununla birlikte, Selenium WebDriver’ı da kurmanız gerekiyor. WebDriver, Selenium'un tarayıcıları kontrol etmesini sağlayan bir bileşendir. Örneğin, Google Chrome kullanıyorsanız, ChromeDriver’ı indirmeniz gerekir. Bu işlemi şu şekilde yapabilirsiniz:
sudo apt install chromium-chromedriver
Artık Selenium’u ve gerekli WebDriver’ı kurduk! Şimdi, basit bir test ile başlıyoruz.
2. İlk Selenium Testi
Başlangıç olarak, basit bir Python scripti yazacağız. Bu script, Selenium’un doğru çalışıp çalışmadığını test etmek için Google’a gidip, sayfa başlığını alacak.
İlk olarak bir Python dosyası oluşturun:
touch selenium_test.py
Daha sonra aşağıdaki kodu bu dosyaya yapıştırın:
from selenium import webdriver
# Tarayıcıyı başlatıyoruz
driver = webdriver.Chrome()
# Google'a gidiyoruz
driver.get("https://www.google.com")
# Sayfa başlığını yazdırıyoruz
print(driver.title)
# Tarayıcıyı kapatıyoruz
driver.quit()
Bu kodu çalıştırdığınızda, Chrome tarayıcısının açıldığını ve Google sayfasına gittiğini görmelisiniz. Sayfa başlığını terminalde göreceksiniz.
3. Testlerinizi Geliştirmek
Artık temel Selenium bilgisine sahip olduğumuza göre, daha fazla test yapmak için adımlarımıza devam edebiliriz. Otomasyon testlerinde sıklıkla karşılaşılan bazı önemli durumlar şunlardır:
Element Bulma: Testlerinizdeki en önemli unsurlardan biri, sayfada bulunan öğelere ulaşmaktır. Selenium, birçok farklı yöntem sunar: `find_element_by_id()`, `find_element_by_name()`, `find_element_by_xpath()`, vb.
Örneğin, bir öğeye ID ile erişmek için şu kodu yazabilirsiniz:
search_box = driver.find_element_by_name("q")
search_box.send_keys("Selenium") # Selenium'u arama kutusuna yazıyoruz
search_box.submit() # Arama butonuna basıyoruz
Beklemeler: Web sayfalarında öğeler yüklenirken bazen bekleme yapmanız gerekebilir. Bu, testlerinizin doğru şekilde çalışmasını sağlar. Selenium, `WebDriverWait` kullanarak öğelerin belirli bir süre içinde yüklenmesini beklemenize olanak tanır.
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# Belirli bir öğenin görünmesini bekliyoruz
wait = WebDriverWait(driver, 10)
element = wait.until(EC.visibility_of_element_located((By.NAME, "q")))
Bu gibi küçük ama etkili yöntemler, testlerinizin başarısız olma olasılığını önemli ölçüde azaltır.
4. Testlerinizi Otomatikleştirin
Linux ortamında Selenium’u kullanarak testlerinizi otomatikleştirmeniz çok kolay. Bash betikleri veya cron job’ları kullanarak belirli aralıklarla testlerinizi çalıştırabilir ve sonuçları size e-posta yoluyla bildirebilirsiniz.
Örneğin, belirli bir saatte testlerinizi çalıştırmak için şu komutu kullanabilirsiniz:
crontab -e
Cron dosyasına şu satırı ekleyerek testlerinizi her gün saat 9:00'da çalıştırabilirsiniz:
0 9 * * * python3 /path/to/selenium_test.py
Bu şekilde, her gün otomatik olarak testleriniz çalıştırılacak.
5. Sonuç: Otomasyonun Gücü
Selenium ile Linux üzerinde otomasyon testleri yapmanın kolay ve etkili bir yolunu keşfettik. Artık, manuel testlerin sıkıcı ve zaman alıcı süreçlerinden kurtulabilir ve yazılımınızın her yeni sürümünde hızlıca testler yapabilirsiniz. Selenium’un gücünden yararlanarak, testlerinizi çok daha verimli hale getirebilir ve yazılım kalitesini artırabilirsiniz.
Unutmayın, otomasyon testleri sadece yazılım geliştirme sürecinizi hızlandırmakla kalmaz, aynı zamanda hata oranlarını da minimize eder. Bu sayede, kullanıcılarınıza daha güvenli ve hatasız bir deneyim sunarsınız.