Selenium ile Test Yaparken Chrome İnternet Tarayıcısını Nasıl Açık Tutarız?

Selenium ile web uygulamalarımızın testlerini otomatize edebiliriz. Web uygulamamızı test etmek için bir test senaryosu hazırız. Bu test senaryomuz birkaç adımdan oluşabilir.

Testlerimizi gerçekleştirirken test, senaryo gereği bir adımı geçmeden diğerine geçemeyebilir. Eğer browserımız sürekli açık olmazsa testimizin başarısız olduğu bir adıma denk geldiğimizde testimiz sonlanır ve testi tekrar ilk adımdan başlatmak gerekebilir. Bu durumu çözmek için ve zamanımızı daha verimli kullanmak için browserımızı sürekli açık tutmak isteriz.

Bu yazıda testlerimiz için web browserımızı nasıl açık tutabiliriz bunu anlatacağım.

Chrome Tarayıcımızı sürekli açık tutabilmek için tarayıcımızı debugging modunda çalıştıracağız. Chrome’u debugging modunda nasıl çalıştırılacağı ile ilgili bilgiler için aşağıdaki linkten chrome ‘ un developer dokümantasyonuna bakabilirsiniz.

https://chromedevtools.github.io/devtools-protocol/

Chrome Devtools Dokümantasyonu

Chrome’ un Debugging Modunda Çalıştırılması

Kullanıcı verilerinin kaydedileceği chromedata adında bir klasörü chromedriver.exe’ nin bulunduğu klasörde oluşturuyoruz. Dosyanın ismi herhangi bir ad olabilir.

Klasör Yapısı

Chrome Browser’ı debugging modunda açabilmek için ilk önce terminal ekranımızı açıp chrome’ un yüklü olduğu klasör içerisinde bulunan chrome.exe dosyasının içine girmek için aşağıdaki komutu çalıştırıyoruz. Sizin bilgisayarınızda bu yol farklı olabilir.

cd C:\Program Files\Google\Chrome\Application

chrome.exe ‘nin bulunduğu klasör

Daha sonra aşağıdaki komutları çalıştırıyoruz.

chrome.exe --remote-debugging-port=9222 chrome.exe --user-data-dir=C:\Users\etem\Desktop\myscript\chromedata

Bu komutları terminalde çalıştırırsak aşağıdaki gibi browser açılır. Bu browsera 9222 portundan ulaşacağız.

Opened Chrome Web Browser

Aşağıdaki kod bloğunda chrome driver’ ı nasıl kullanacağımız gösterilmiştir.

from selenium import webdriver
import time
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.options import Options

def crawl_website(search_key_send):
    chrome_options = Options()
    chrome_options.debugger_address="localhost:9222"
    
    browser =webdriver.Chrome(executable_path=r"C:\Users\etem\Desktop\myscript\chromedriver.exe",options=chrome_options)

    browser.get("https://www.etemkeskin.com/")

Başarılar …