Selenium kullanarak otomatik test etme, web uygulamalarının hızlı ve doğru bir şekilde test edilmesine olanak tanır Bu yazılım aracıyla, web sayfalarının farklı özelliklerini otomatik olarak kontrol edebilir ve hataları tespit edebilirsiniz Selenium kullanımıyla, test süreçleriniz daha verimli ve zaman tasarruflu hale gelecek Detaylı bilgi için bizimle iletişime geçebilirsiniz
Selenium web otomasyon testleri, web uygulamalarının fonksiyonellik testlerini otomatikleştirerek uygulama kalitesini ve performansını arttırmak için kullanılan bir araçtır.
Selenium, açık kaynaklı bir test otomasyon aracıdır ve birçok programlama dili ile uyumlu çalışabilir. Bu nedenle, farklı programlama dillerini bilen birçok geliştirici tarafından kullanılmaktadır.
Selenium'un avantajlarından biri, manuel test işlemleri için gereksinim duyulan zamanı ve insan kaynaklarını azaltmasıdır. Böylece, otomatik test işlemleri ile zaman ve kaynak tasarrufu sağlanarak, daha hızlı ve daha doğru sonuçlar alınabilir.
Selenium ayrıca, test sürecinde ortaya çıkan hataların nedenlerinin daha hızlı ve daha kolay bir şekilde tespit edilmesini sağlar. Bu hatalar, otomatik test işlemleriyle tespit edildiği için, hata ayıklama işlemleri daha hızlı ve daha verimli bir şekilde gerçekleştirilebilir.
Selenium, açık kaynak kodlu olması sebebiyle, ücretsiz bir şekilde kullanılabilir. Bu nedenle, küçük ve orta ölçekli işletmeler de dahil olmak üzere birçok şirket tarafından tercih edilmektedir. Ayrıca, açık kaynak kodlu olması sayesinde, geliştiriciler arasında kolayca paylaşılabilir ve değiştirilebilir.
Bu makalede, Selenium aracının nasıl kullanılacağı, kurulumu, sürücüleri ve test senaryolarının yazımı hakkında detaylı olarak bilgi verilecektir.
Selenium Nedir?
Selenium, web uygulamalarının otomatik testi için bir araçtır. Açık kaynak kodlu bir yazılımdır ve birçok dilde kullanılabilir. Selenium kullanarak, bir web sitesindeki çeşitli elementleri otomatik olarak kontrol edebilir, form girdileri yapabilir, kullanıcı etkileşimleri taklit edebilir ve sonuçları analiz edebilirsiniz.
Selenium, geliştiricilerin test vakalarını el ile çalıştırmak yerine otomatik olarak çalıştırmasına olanak tanır. Bu, daha verimli, hızlı ve hassas bir test sürecine yol açar. Ayrıca, farklı platformlarda web uygulamalarının çalışmasını kontrol etmek için de kullanılabilir. Selenium ayrıca, işletmelerin web uygulamalarının kalitesini ve kullanılabilirliğini arttırmalarına yardımcı olabilir.
Selenium, büyük ölçüde yazılım geliştirme sürecinin hızlandırılmasını sağlayan bir araçtır. Geliştiricilerin, uygulama geliştirme sürecini kısaltırken, daha kaliteli bir uygulama sunmalarına yardımcı olabilir. Ayrıca, sık kullanılan web tarayıcılarının otomatik testlerini destekleyen bir dizi sürücüye sahiptir.
Selenium Kurulumu
Selenium, web testleri yapmak için kullanılan açık kaynaklı bir otomasyon aracıdır. Selenium'u kullanmak için öncelikle kurulum işlemlerini doğru bir şekilde gerçekleştirmek gerekmektedir.
Selenium kurulumu için gereksinimler, tarayıcı sürücüleri ve Selenium sürücülerini indirmek gerekmektedir. İşletim sisteminize göre tarayıcı sürücüsü uygun versiyonunu indirmelisiniz. Ayrıca, Python veya Java gibi bir programlama diline de ihtiyaç duyulur.
Gereksinimler: | - Java veya Python kurulu olmalı | - Tarayıcı sürücüleri |
İndirme Sayfaları: | - Java için: https://www.seleniumhq.org/download/ | - Python için: https://selenium-python.readthedocs.io/installation.html |
Python kurulumu yapmak isteyenler aynı sayfada bulunan koda göz atarak adımları izleyebilirler. Java kurulumu yapmak isteyenler ise web sitesindeki "Download" butonuna tıklayarak gerekli dosyaları indirip kurulum işlemini gerçekleştirebilirler.
- Java için gereksinimler:
- - JDK (Java Development Kit) sürümünüzün uygun bir versiyonuna sahip olmalısınız.
- - JRE (Java Runtime Environment) sürümünüzün uygun bir versiyonuna sahip olmalısınız.
- Python için gereksinimler:
- - Python 3.x kurulu olmalıdır.
- - Selenium kurulu olmalıdır.
Selenium kurulumunu tamamladıktan sonra, farklı tarayıcıların (Chrome, Firefox, IE, vb.) sürücüleri de indirilip kurulmalıdır. Bu sürücüler doğru şekilde kurulmadığında Selenium, web uygulamalarını test etmek için gereken istekleri gönderemez.
Bu adımları doğru bir şekilde takip ettiğinizde Selenium kurulumu hızlı ve sorunsuz bir şekilde tamamlanacaktır.
Python için Kurulum
Python kullanarak Selenium kurulumu oldukça basit ve hızlı bir şekilde gerçekleştirilebilir. İlk olarak, Python uygun bir şekilde yüklü olmalıdır. Ardından, aşağıdaki adımları izleyebilirsiniz:
- Selenium kütüphanesini yüklemek için, komut satırına
pip install selenium
yazın. Bu, Selenium kurulumunu tamamlamanız için gerekli olan tüm kütüphaneleri yükleyecektir. - Selenium'un kullanabildiği bir tarayıcı sürücüsüne ihtiyacınız olacaktır. Örneğin, ChromeDriver kullanabilirsiniz. Bunun için aşağıdaki adımları izleyin:
İşletim Sistemi | Kurulum Komutu |
---|---|
Windows | pip install chromedriver-binary |
Linux | sudo apt install chromium-chromedriver |
macOS | brew install chromedriver |
Bu, ChromeDriver'ın doğru şekilde yüklenmesini sağlamalıdır. Selenium kurulumu sırasında herhangi bir sorunla karşılaşırsanız, internet üzerinde sağlam bir kaynak (örneğin, Selenium dokümantasyonu) arayarak daha fazla yardım alabilirsiniz.
Java için Kurulum
Java kullanarak Selenium kurulumu oldukça basittir. İlk olarak, Java Development Kit (JDK) ve Eclipse Java Integrated Development Environment (IDE) gibi gerekli araçları indirmeniz gerekir.
JDK'nın en son sürümünü Oracle web sitesinden indirebilirsiniz. İndirme işlemi tamamlandıktan sonra, JDK'nın doğru bir şekilde yüklendiğinden emin olmak için komut istemcisini açın ve java -version komutunu çalıştırın. Doğru yükleme yapıldıysa, JDK'nın sürüm numarasını gösteren bir çıktı alacaksınız.
Eclipse IDE, Eclipse web sitesinden indirilebilir. Eclipse'i indirdikten ve kurduktan sonra, bir Java projesi oluşturabilirsiniz. Ardından, Selenium Java sürücüsünü projenize ekleyebilirsiniz. Bunun için, sürücünün bağımlılıklarını proje dosyalarına eklemeniz gerekiyor. Bu adımı gerçekleştirmek için, yaygın olarak kullanılan bina yöneticilerinden biri olan Maven veya gradle gibi araçları kullanabilirsiniz.
Bağımlılıkları ekledikten sonra, sürücünün doğru bir şekilde yüklendiğinden emin olmak için sürücüyü kullanarak basit bir test senaryosu yazabilirsiniz. Aşağıda, Selenium Java sürücüsü için örnek bir kod parçası verilmiştir:
import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;public class ExampleTest { public static void main(String[] args) { // Set the browser driver path System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver"); // Create a new ChromeDriver instance WebDriver driver = new ChromeDriver(); // Navigate to the website driver.get("https://example.com"); // Close the browser driver.quit(); }}
Bu kod parçasında, önce Selenium Java sürücüsünün yeri belirlenir, ardından bir ChromeDriver örneği oluşturulur. Daha sonra, testin çalıştırılacağı web sitesine gidilir ve son olarak tarayıcı kapatılır.
Selenium Java sürücüsü için kurulum biraz teknik olsa da, doğru araçları kullanarak ve sıklıkla oluşturduğunuz örneklerle pratik yaparak, kısa sürede kolayca öğrenebilirsiniz.
Selenyum Web Sürücüleri
Selenium kullanıcıları için birçok farklı web sürücüsü seçeneği mevcuttur. Bu sürücüler, kullanıcının farklı web tarayıcıları üzerinde test yapabilmesine olanak tanır. Selenium'un en popüler web sürücüleri arasında ChromeDriver ve FirefoxDriver yer almaktadır.
ChromeDriver, Google Chrome tarayıcısında test yapmak için kullanılan bir web sürücüsüdür. Kurulumu oldukça kolaydır. İlk olarak ChromeDriver'ın resmi web sitesinden indirilmesi gerekir. Ardından, sürücüyü çalıştırmadan önce PATH değişkenlerinin doğru şekilde yapılandırılması gerekir. ChromeDriver'ın kullanımı oldukça basittir. Selenium WebDriver'ın kurulumundan sonra, istenen bilgileri girerek sürücüyü başlatabilir ve testleri çalıştırabilirsiniz.
Diğer popüler bir web sürücüsü seçeneği olan FirefoxDriver, Selenium'un test işlemleri için Firefox tarayıcısını kullanmasına izin verir. Mozilla'nın resmi web sitesinden indirilip kurulabilen sürücü, ChromeDriver ile aynı kolaylıkta kurulur ve kullanılır. FirefoxDriver'ı kullanmanın bir diğer avantajı, Selenium WebDriver ile birlikte gelmesidir, bu nedenle ayrı bir yüklemeye gerek yoktur.
Tercih ettiğiniz web tarayıcısına göre, Selenium'un farklı sürücü seçenekleri arasından seçim yapabilirsiniz. Chrome veya Firefox tarayıcılarını kullanıyorsanız, ChromeDriver ve FirefoxDriver sizin için en uygun seçenekler olabilir. Ancak, Selenium'un diğer sürücüleri de özellikle test etmeniz gereken web tarayıcısına göre farklı avantajlar sunabilir.
ChromeDriver
ChromeDriver, Selenium ile Web otomasyon testleri yaparken, Google Chrome tarayıcısını kullanmak isteyen kullanıcılar için gerekli bir bileşen dir. ChromeDriver, Google Chrome'u otomatik olarak kontrol etmek için gerekli olan protokolü uygular. Bu nedenle ChromeDriver'ın kurulumu ve yapılandırılması önemli bir adımdır.
ChromeDriver'ın kurulumu oldukça kolaydır. ChromeDriver'ın doğru sürümünü indirip kurmanız yeterlidir.
Google Chrome sürümünüzü öğrenmek için, Google Chrome tarayıcınızı açın ve adres çubuğuna chrome://settings/help
yazın. Chrome sürümünüz, gösterilen sayfanın üstünde listelenecektir.
Ardından, bu linki kullanarak ChromeDriver'ı indirin.
İndirdiğiniz zip dosyasını indirme klasöründen herhangi bir yere çıkarın. Klasörü yalnızca yolunu bulmayı kolaylaştırmak için C:\ ye kaydedebilirsiniz.
ChromeDriver'ın doğru şekilde çalışması için PATH değişkeni ayarlanmalıdır.
Bunun için, Windows arama çubuğuna "Sistem Ortam Değişkenleri" yazıp, açılan pencerede "Ortamlar Değişkenleri"ne tıklayın.
"Kullanıcı Değişkenleri" bölümünde "PATH" yazan değişkeni seçin ve "Düzenle" ye tıklayın.
"Yeni" ye tıklayın ve ChromeDriver'ın yolunu "C:\chromedriver
" olarak girin. (ChromeDriver'ı farklı bir konumda sakladıysanız, bu yolu değiştirin.)
ChromeDriver kurulumunu kontrol etmek için, komut istemi (CMD) açıkken, "chromedriver" komutunu yazın ve Enter tuşuna basın. ChromeDriver çalışıyorsa, başarılı bir şekilde kurulmuş demektir.
ChromeDriver ile başarılı bir şekilde test yapmak için, test senaryonuzu uygun şekilde yapılandırmanız ve sürücünün kullanılacağı adımları tanımlamanız gerekir.
ChromeDriver, browsers/ChromeDriver dizininde bulunabilir. Bunu hatırlamanız yeterlidir. Tarayıcı ve web sürücüsü başarıyla oluşturulduktan sonra, tüm test senaryolarınız için Google Chrome tarayıcı otomatik olarak açılacaktır.
FirefoxDriver
Selenium ile FirefoxDriver kullanarak test yapmak için öncelikle FirefoxDriver'ı kurmamız gerekmekte. FirefoxDriver, testleri Firefox üzerinde çalıştırmak için gereklidir. Aşağıdaki adımları takip ederek FirefoxDriver'ı kolayca kurabilirsiniz:
- FirefoxDriver'ı indirin ve çalıştırın. İndirme bağlantısına "https://github.com/mozilla/geckodriver/releases" adresinden erişebilirsiniz.
- Seçtiğiniz konuma çıkartın ve dosya konumunu sistem PATH'ine ekleyin.
Kurulum tamamlandıktan sonra, FirefoxDriver'ı kullanarak test yapmaya başlayabilirsiniz. FirefoxDriver'ın kullanımı ve örnek kodlar için Selenium belgelerine bakabilirsiniz. Örnek olarak, aşağıdaki kodda, FirefoxDriver ile "https://www.google.com" web sitesinden alınan başlık kontrol edilmektedir:
from selenium import webdriverdriver = webdriver.Firefox()driver.get("https://www.google.com")assert "Google" in driver.titledriver.quit()
Yukarıdaki kodu çalıştırdığınızda, Firefox açılacak ve "Google" başlığının sayfa başlığı içinde olup olmadığını kontrol edecektir.
Selenium Testi Oluşturma
Selenium, herhangi bir web sayfasında gerçekleştirilebilen otomatik testlerin geliştirilmesine olanak sağlar. Web sayfasındaki herhangi bir elementin tıklanması, doldurulması, kaydırılması ve diğer etkileşimlerin test edilmesini sağlar. Bu nedenle, Selenium'u kullanarak otomatik olarak web testleri oluşturmak oldukça basittir.
Selenium testi oluşturmak için ilk adım, web sayfasındaki elementlerin belirlenmesidir. Elementler, etkileşimlerin gerçekleştirileceği alanlardır. Bu elementler, CSS sınıfları, XPath, ID veya HTML etiketleri gibi farklı tanımlayıcılarla özelleştirilebilir. Selenium kullanarak, gerekli elementler kolayca tanımlanabilir ve otomatik test süreci başlatılabilir.
Başka bir adım, test senaryosunun yazılmasıdır. Test senaryosu, web sayfasındaki işlevselliği test etmek üzere oluşturulmuş bir dizi adımdır. Test senaryoları, Selenium kodu şeklinde yazılabilir veya Selenium IDE aracılığıyla kaydedilebilir. Her senaryo, web sayfasındaki özelliklerin test edilmesine ve sınamasına olanak tanır ve ayrıca test sonuçlarını da görüntülemek için oluşturulan raporlar kullanılabilir.
Özetle, Selenium kullanarak, web sayfalarında otomatik testler oluşturmak oldukça kolaydır. Sadece belirli adımları (örneğin, elementleri tanımlama ve test senaryolarının yazılması) izlemeniz gerekir ve Selenium, gerisini kendisi halleder. Selenium, test etmek istediğiniz web sitelerine emin bir şekilde test yapmanızı sağlar ve zaman ve emek tasarrufu sağlar.
Elementler ve Kimlikleri
Web sayfalarında test senaryoları oluştururken, her bir elementin bulunması ve seçilmesi gerekiyor. Selenium ile, HTML sayfalarında belirli elementleri bulmak için farklı kimliklendirme yöntemleri kullanabilirsiniz. Bu kimliklendirme yöntemleri, bir elementin bulunmasında ve seçiminde çok önemlidir.
İşte en yaygın kullanılan kimliklendirme yöntemleri:
- ID: Bir elementin benzersiz bir kimliği olabilir. Bu nedenle, elementleri bulmak için id'leri kullanmak en kolay yöntemdir.
- Class Name: Bir elementin birden fazla class'ı olabilir. Ayrıca, bir çok elementin aynı class'ı da olabilir. Bu nedenle bu yöntem, elementleri bulmak için pek tercih edilmez.
- Name: Bir elemente atanan bir isim olabilir. Bu kimliklendirme yöntemi, form elemanlarını bulmak için çok kullanışlıdır.
- Tag Name: Bir elementin etiketi de bir kimliklendirme yöntemi olarak kullanılabilir. Ancak, bir sayfada birden çok aynı etiketi olan elementler olabilir.
- Link Text: Bir bağlantının metni de bir kimliklendirme yöntemi olarak kullanılabilir. Ancak, bir sayfada benzersiz bir bağlantı metni bulmak zor olabilir.
- Partial Link Text: Bağlantı metninin bir kısmını kullanarak elementleri bulmak mümkündür.
Selenium ile bir elementi seçmek için belirli bir kimliklendirme yöntemine ihtiyacınız varsa, kullanabilirsiniz. Örneğin, bir id kullanarak bir elementi seçmek için şöyle bir kod yazabilirsiniz:
element = driver.find_element_by_id("element_id")
Bir kez element seçildikten sonra, taslak senaryonuza uygun olarak farklı test adımları yapabilirsiniz. Örneğin, bir form doldurma işlemi gerçekleştirmeniz gerekiyorsa, kullanıcı adı alanını seçebilir ve ardından sendKeys yöntemiyle değerini doldurabilirsiniz:
element = driver.find_element_by_name("username")element.sendKeys("testuser")
Elementleri bulmak ve seçmek, Selenium ile otomatik test senaryoları oluşturmanın en önemli adımlarından biridir. Bu adımda dikkatli olmak ve doğru kimliklendirme yöntemlerini kullanmak önemlidir.
Test Senaryoları Yazma
Selenium ile test senaryoları yazmak oldukça kolaydır. Selenium testlerinde, her test için ayrı bir senaryo oluşturulur. Bu senaryolar, web sayfasındaki herhangi bir elementin işlevini test edebilir. Senaryolar, bir test ismi ve web sayfasında test edilecek elementlerin tanımlandığı bir dizi adımdan oluşur. Senaryo oluşturma işlemi, belirli bir kodlama dilinde gerçekleştirilir.
Bir senaryo oluşturmak için, öncelikle web sayfasında test edilecek elementlerin tespit edilmesi gerekir. Bu elementlerin özellikleri, benzersiz kimliklerine veya belirli sınıflara sahip olmalarına bağlı olarak belirlenir. Selenium, herhangi bir web sayfasındaki herhangi bir elementi tanıyabilir ve ona erişebilir.
Test senaryoları, her adımın başarılı bir şekilde gerçekleştirilip gerçekleştirilmediğini doğrulamak için yöntemler içerir. Bu yöntemler, bir elementin varlığını kontrol etmek, bir elementin değerini kontrol etmek veya bir element üzerinde bir eylem gerçekleştirmek olabilir. Örneğin, bir senaryo, web sayfasında bir textbox'ın kontrolünü sağlar ve bu textbox'ta bir değer girerek bir butona tıklama işlemi gerçekleştirir.
Bir senaryonun çalıştırılması, Selenium Web Sürücüsü kullanılarak gerçekleştirilir. Web Sürücüsü, test senaryolarını doğrudan web sayfasında çalıştırır. Selenium, internet tarayıcısında çalışan bir testinium aracıdır ve tarayıcının evrensel özelliklerini kullanarak web sayfasını test eder. Bu sayede, tarayıcıya bağımlılık oranı azaltılır ve test etme işlemi tarayıcı uygunluğu açısından doğru bir sonuç verir.
Sonuç
Selenyum ile web otomasyon testleri, birçok avantaj ve faydalarla birlikte gelmektedir. Öncelikle, otomatik test etmenin en büyük avantajı, zaman ve insan kaynaklarını tasarruf etmektir. Otomatik testler, manuel testlere göre daha hızlı ve daha verimli bir şekilde gerçekleştirilebilir. Ayrıca, otomatik testlerin tekrarlanabilme özelliği de manuel testlerle karşılaştırılamayacak kadar yüksektir. Bu, aynı test senaryosunun birden fazla kez çalıştırılmasını ve sonuçların tutarlı olmasını sağlar.
Bununla birlikte, otomatik testler hataları tespit etme ve raporlama konusunda da çok daha başarılıdır. Hatalı testler, hızlı bir şekilde tespit edilir ve hata raporları, daha hızlı ve daha doğru bir şekilde oluşturulabilir. Bu, hataların erken tespiti ve müdahalesi için gereken süreyi azaltır ve sonuçta maliyetleri düşürür.
Diğer bir avantajı ise, otomatik testlerin daha kapsamlı olabilmesidir. Manuel testler sırasında, tüm olası senaryolar kontrol edilemeyebilir. Ancak otomatik testler, tüm senaryoların kontrol edilmesini sağlar ve bu da çok daha eksiksiz bir test süreci anlamına gelir.
Tüm bu avantajlar, işletmelerin rekabetçi avantajlarını arttırmalarına ve müşteri memnuniyetini arttırmalarına yardımcı olur. Selenium'un otomatik test etme sürecindeki kullanımı, işletmelerin sürekli kalite kontrol ve test etmede başarılı olmasına yardımcı olur.