Selenium WebDriver Mimarisi: Bileşenler, İşlevler ve Sınırlamalar

Yayınlanan: 2020-12-17

Sistemi test etmek zorlu bir iştir ve bunu otomatikleştiren bir araç gibisi yoktur. Otomasyon test cihazları için akla gelen araçlardan biri Selenium'dur. Selenium WebDriver kullanarak otomasyon testi becerileri hakkında bilgi edinmek istiyorsanız, doğru yere geldiniz. Başlayalım.

İçindekiler

Selenyum nedir?

Selenium, açık kaynaklı bir otomasyon test aracıdır. Araç yalnızca web tabanlı uygulamaları test eder ve birden çok tarayıcı ve işletim sistemiyle uyumludur.

Selenium'un öncelikle üç versiyonu vardır:

  • selenyum RC
  • selenyum IDE
  • selenyum ızgara

Tüm bu sürümler 2007'de piyasaya sürüldü.

Selenyum Web Sürücüsü

2011 yılına kadar Selenium RC yaygın olarak kullanıldı. 2011 yılının ortalarında Selenium, WebDriver 2.0 adlı yeni bir sürüm yayınladı. RC'ye yükseltme değil, tamamen farklı bir araçtı. Aradaki fark, Selenium WebDriver 2.0'ın kendi komutlarına sahip olmasıydı. Selenium WebDriver'ın en son sürümü 3.14'tür.

Selenium WebDriver Dinamik komut dosyaları oluşturabilme.

  • Birden çok tarayıcı ile uyumludur.
  • Raporlar ve günlükler oluşturur.
  • Tarayıcı motorunu kullanarak doğrudan tarayıcıyla iletişim kurduğu için hızlıdır.
  • Sayfa öğeleri arasında gerçek yaşam etkileşimi.
  • Selenium WebDriver'ın API'si çok daha basittir ve kafa karıştırıcı ve gereksiz komutlar içermez.
  • Selenium WebDriver, başsız HtmlUnit tarayıcısını destekleyebilir.
  • Selenium WebDriver Mimarisinin beş bileşeni vardır:

    1. Dil Bağlama veya Selenium İstemci Kitaplığı: Bunlar Jar dosyalarıdır ve bu, Selenium çerçevesini yazmak için kullanılan dildir. Selenium için komut dosyası Java, C#, Ruby, Python ve Perl ile yazılmıştır.
    2. Selenium Uygulama Programlama Arayüzü (API): API, herhangi bir yazılım dilinin bağlı olduğu kurallar ve özellikler kümesi sağlar. Ayrıca diğer yazılım programlarıyla iletişim kurmak da gereklidir. Kısacası API, yazılım programları ile AC iletişim kanalları arasında arayüz görevi görür.
    3. Remote WebDriver: WebDriver arabiriminin uygulama sınıfıdır. Test komut dosyası geliştiricisi, test komut dosyasını bir WebDriver sunucusu aracılığıyla yürütmek için uzak makinedeki sınıfı kullanır.
    4. JavaScript Nesne Gösterimi (JSON) Kablolu Protokol: JSON, veri alışverişini kolaylaştırmak için hafif bir veri değiştirilebilir biçimidir. Web üzerinde istemci ve sunucu arasında veri aktarımı yapar. JSON dosyasının bir .json uzantısı vardır. JSON kablolu protokolü, verileri JSON biçiminde gönderir. Ardından, sunucu verileri ayrıştırır ve yürütür. Çalıştırıldıktan sonra sunucu bir yanıt verir ve bunu JSON formatında istemciye geri gönderir.
    5. WebDriver: WebDriver, web uygulamalarını otomatikleştiren ve beklendiği gibi çalıştıklarını doğrulayan araçtır.

    Selenyum Web Sürücüsü Mimarisi

    Şimdi Selenium WebDriver Mimarisine odaklanacağız . Selenium WebDriver API, tarayıcılar ve tarayıcı sürücüleri arasındaki etkileşimleri kolaylaştırır. Mimari aşağıdaki dört katmandan oluşur:

    • Selenyum İstemci Kitaplığı
    • JSON Tel Protokolü
    • Tarayıcı Sürücüleri
    • tarayıcılar

    Selenium WebDriver Dahili Olarak Nasıl Çalışır?

    Selenium WebDriver'ın kodu Eclipse Integrated Development Environment'da (IDE) yazılmıştır. Java gibi Selenium istemci kitaplıklarından herhangi birini kullanır.

    Komut dosyası hazır olduğunda , programı çalıştırmak için Çalıştır'a tıklayın. Yukarıdaki komut dosyasına bağlı olarak, Chrome tarayıcı başlatılacak ve SeleniumHQ web sitesine gidecektir.

    Selenium WebDriver'ın iç mimarisi için aşağıdaki genel adımları kullanın:

    1. Çalıştır'a tıklayın .

    Selenium istemci kitaplığı, Selenium API ile iletişim kurar.

    2. Selenium API, dil komutunu seviye bağlamasından tarayıcı sürücüsüne gönderir.

    İletişim JSON kablolu protokolü ile yapılır.

    3. Selenium API, isteği tarayıcı sürücüsüne gönderir.

    Tarayıcı sürücüsü, HTTP isteğini almak için HTTP sunucusunu kullanır.

    4. HTTP sunucusu, yürütme için gereken tüm komutları filtreler.

    Selenium betiğindeki komutlar tarayıcıda yürütülür.

    5. HTTP sunucusu, yanıtı otomasyon test komut dosyasına gönderir.

    Selenium WebDriver Teknik Özellikleri

    • İşletim Sistemi (OS) – Windows, Solaris, Linux ve Mac OS
    • Desteklenen Tarayıcı – Internet Explorer, Google Chrome 12.0.712.0 ve üzeri, Safari, Opera 11.5 ve üzeri, Mozilla Firefox, Internet Explorer, HtmlUnit 2.9, Android ve iOS

    Selenium WebDriver'ın En İyi Özellikleri

    • Çoklu Tarayıcı Desteği – Hemen hemen tüm tarayıcıları destekler.
    • Çoklu Dil Desteği – Yaygın olarak kullanılan programlama dillerinin çoğunu destekler.
    • Hız – Selenium WebDriver, Selenium Suite'in diğer araçlarına kıyasla daha hızlıdır.
    • Basit Komutlar – Selenium WebDriver'da ortak komutlar kolayca kullanılır ve uygulanır. Örneğin, Selenium WebDriver'da bir tarayıcı başlatmak için aşağıdaki komutu yürütün:
      • WebDriver sürücüsü = yeni FirefoxDriver(); (Firefox tarayıcısı)
      • WebDriver sürücüsü = yeni ChromeDriver(); (Chrome tarayıcı)
      • WebDriver sürücüsü = yeni InternetExplorerDriver(); (Internet Explorer tarayıcısı)
    • Yöntemler ve Sınıflar – Selenium WebDriver, otomasyon testindeki olası zorlukları çözmek için birden fazla çözüme sahiptir.

    Okuyun: Selenyum Proje Fikirleri ve Konuları

    Selenium WebDriver'ın Sınırlamaları

    • Selenium WebDriver yeni tarayıcıları otomatik olarak desteklemez

    WebDriver işletim sistemi düzeyinde çalıştığından, her tarayıcı işletim sistemi ile çeşitli şekillerde iletişim kurar. Bu nedenle, yeni bir tarayıcı için işletim sistemi ile iletişim farklı olabilir ve bu da bir uyumluluk sorununa neden olabilir. Yeni tarayıcıyı Selenium WebDriver ile uyumlu hale getirmek için Selenium WebDriver ekibinize biraz zaman vermeniz gerekecek .

    • Selenium WebDriver , otomatik olarak bir 'Test Sonuçları' dosyası oluşturmak için yerleşik bir komuta sahip değildir

    Entegre geliştirme ortamının (IDE) çıktı penceresine güvenmeniz gerekir. Ayrıca tercih ettiğiniz dili kullanarak kendiniz tasarlayabilir ve bir HTML dosyası veya metin olarak saklayabilirsiniz.

    Ayrıca Okuyun: Hindistan'da Selenyum Geliştirici Maaşı

    Dünyanın En İyi Üniversitelerinden Yazılım Mühendisliği Kurslarına Kaydolun . Kariyerinizi hızlandırmak için Yönetici PG Programları, Gelişmiş Sertifika Programları veya Yüksek Lisans Programları kazanın.

    Son düşünceler

    • Selenium WebDriver , web uygulamalarını farklı tarayıcılarda test eden bir araçtır.
    • Farklı programlama dilleri kullanır.
    • Selenium WebDriver , daha basit mimarisi nedeniyle Selenium RC'nin yükseltilmiş bir sürümüdür.
    • Selenium WebDriver'ın kısa bir API'si vardır.

    Full-stack yazılım geliştirme hakkında daha fazla bilgi edinmek istiyorsanız, upGrad & IIIT-B'nin çalışan profesyoneller için tasarlanmış ve 500+ saatlik sıkı eğitim, 9+ proje sunan Full-stack Yazılım Geliştirmede Yönetici PG Programına göz atın. ve görevler, IIIT-B Mezunları durumu, pratik uygulamalı bitirme projeleri ve en iyi firmalarla iş yardımı.

    Geleceğin Kariyerine Hazırlanın

    Yazılım Mühendisliği Yüksek Lisans Programına Hemen Başvur