ChromeDriver için en son ikili dosyalar, çeşitli ana makine platformları için zip dosyaları olarak paketlenir.
ChromeDriver'ın eski sürümlerini İndirilenler bölümünde bulabilirsiniz.
Desteklenen uygulamalar
ChromeDriver, Chrome tarayıcıda (30 ve sonraki sürümler) ve Android 4.4 (KitKat)'ten itibaren web hata ayıklama ve JavaScript'in etkinleştirildiği WebView tabanlı uygulamalarda test çalıştırmayı destekler.
Chrome uygulamasını şuradan yükleyebilirsiniz:
Kararlı: https://play.google.com/store/apps/details?id=com.android.chrome
Selenium WebDriver Dil Bağlamaları
Testlerinizi yazabilmeniz için seçtiğiniz dilde standart Selenium projesi WebDriver dil bağlamalarının yüklenmesi gerekir. Bu kitaplık, yerel paket yöneticinizde veya Selenium projesinde kullanılabilir.
Örneğin, Python için dil bağlamaları pip ile yüklenebilir.
$ pip install selenium
Android SDK
SDK'yı developer.android.com/sdk/ adresinden indirebilirsiniz.
Cihaz gereksinimleri
Chrome 33 sürümü itibarıyla, köklenmiş bir cihaz gerekmez. Chrome'un önceki sürümlerinde testler çalıştırılıyorsa ChromeDriver'ın Chrome'un komut satırı bağımsız değişkenlerini ayarlamak için /data/local
dizinine yazma erişimi gerektirdiğinden cihazların root erişimine sahip olması gerekir.
ChromeDriver'ı çalıştırma
Android SDK'sının Android Debug Bridge (adb) sunucusunu başlatın:
$ adb start-server
Chrome uygulamasında 33 sürümünden önceki bir sürümde test yapıyorsanız adb kabuğunun cihazdaki
/data/local
dizinine okuma ve yazma erişimi olduğundan emin olun:$ adb shell su -c chmod 777 /data/local
ChromeDriver'ı Selenium kitaplığı üzerinden başlatmanızı öneririz ancak komut satırından manuel olarak da başlatabilirsiniz.
$ ./chromedriver
Yalnızca Android'e özel seçenekler
Aşağıdaki Chrome seçenekleri hem Chrome hem de WebView uygulamaları için geçerlidir:
androidPackage
: Chrome veya WebView uygulamasının paket adı.androidDeviceSerial
: (İsteğe bağlı) Uygulamanın başlatılacağı cihazın seri numarası (Aşağıdaki Birden Çok Cihaz bölümüne bakın).androidUseRunningApp
: (İsteğe bağlı) Uygulamayı temiz bir veri dizini ile başlatmak yerine, zaten çalışan bir uygulamaya ekleyin.
Aşağıdaki özellikler yalnızca WebView uygulamaları için geçerlidir.
- androidActivity: WebView'i barındıran etkinliğin adı.
- androidProcess: (İsteğe bağlı) WebView'i barındıran Etkinlik'in işlem adı (ps tarafından sağlanır). Belirtilmediği takdirde işlem adının
androidPackage
ile aynı olduğu varsayılır.
Test yayını yapın
Testler, uygulamanın paket adını androidPackage
seçeneği aracılığıyla ChromeDriver'a iletmelidir. Örneğin, en basit Python testi şu şekilde görünür:
from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_experimental_option('androidPackage', 'com.android.chrome')
driver = webdriver.Chrome('./chromedriver', options=options)
driver.get('https://google.com')
driver.quit()
Birden fazla cihazda
Bir oturum için belirli bir cihazı kullanmak istiyorsanız Chrome seçeneği olarak androidDeviceSerial
'yi belirtin.
Seri numarası belirtilmezse sunucu, her oturumla ilişkilendirmek için kullanılmayan bir cihazı rastgele seçer. Tüm cihazlarda zaten etkin oturumlar varsa hata döndürülür. Bu nedenle, testler tamamlandığında quit işlevini çağırmalıdır.
wd/hub
adlı veri kaynağına bağlan
Testleriniz wd/hub
adresine bağlanmayı bekliyorsa sunucuyu başlatırken --url-base=wd/hub
ekleyebilirsiniz:
$ ./chromedriver --url-base=wd/hub