Android

Biner terbaru untuk ChromeDriver dikemas sebagai file zip untuk berbagai platform host.

ChromeDriver versi sebelumnya dapat ditemukan di Download.

Aplikasi yang didukung

ChromeDriver mendukung pengujian yang berjalan di browser Chrome (versi 30+) dan aplikasi berbasis WebView mulai dari Android 4.4 (KitKat) yang telah mengaktifkan proses debug web dan JavaScript.

Anda dapat menginstal aplikasi Chrome dari:

Stabil: https://play.google.com/store/apps/details?id=com.android.chrome

Binding Bahasa Selenium WebDriver

Binding bahasa WebDriver project Selenium standar harus diinstal untuk bahasa pilihan Anda guna menulis pengujian. Library ini tersedia di pengelola paket lokal atau project Selenium.

Misalnya, binding bahasa untuk Python dapat diinstal dengan pip.

$ pip install selenium

Android SDK

SDK dapat didownload dari developer.android.com/sdk/.

Persyaratan perangkat

Mulai Chrome versi 33, perangkat yang di-root tidak diperlukan. Jika menjalankan pengujian di Chrome versi sebelumnya, perangkat harus di-root karena ChromeDriver memerlukan akses tulis ke direktori /data/local untuk menetapkan argumen baris perintah Chrome.

Menjalankan ChromeDriver

  1. Mulai server Android Debug Bridge (adb) Android SDK:

    $ adb start-server
    
  2. Jika menguji di aplikasi Chrome sebelum versi 33, pastikan shell adb memiliki akses baca dan tulis ke direktori /data/local di perangkat:

    $ adb shell su -c chmod 777 /data/local
    
  3. Sebaiknya mulai ChromeDriver melalui library Selenium, meskipun Anda juga dapat memulainya secara manual dari command line.

    $ ./chromedriver
    

Opsi khusus Android

Opsi Chrome berikut berlaku untuk aplikasi Chrome dan WebView:

  • androidPackage: Nama paket aplikasi Chrome atau WebView.
  • androidDeviceSerial: (Opsional) Nomor seri perangkat tempat aplikasi akan diluncurkan (Lihat bagian Beberapa Perangkat di bawah).
  • androidUseRunningApp: (Opsional) Melampirkan ke aplikasi yang sudah berjalan, bukan meluncurkan aplikasi dengan direktori data yang jelas.

Kemampuan berikut hanya berlaku untuk aplikasi WebView.

  • androidActivity: Nama Aktivitas yang menghosting WebView.
  • androidProcess: (Opsional) Nama proses Aktivitas yang menghosting WebView (seperti yang diberikan oleh ps). Jika tidak diberikan, nama proses diasumsikan sama dengan androidPackage.

Menjalankan pengujian

Pengujian harus meneruskan nama paket aplikasi ke ChromeDriver melalui opsi androidPackage. Misalnya, pengujian Python minimal terlihat seperti ini:

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()

Dapat dijalankan di berbagai perangkat

Untuk menggunakan perangkat tertentu untuk sesi, tentukan androidDeviceSerial sebagai opsi Chrome.

Jika nomor seri tidak ditentukan, server akan memilih perangkat yang tidak digunakan secara acak untuk dikaitkan dengan setiap sesi. Error akan ditampilkan jika semua perangkat sudah memiliki sesi aktif, sehingga pengujian harus memastikan untuk memanggil quit saat selesai.

Hubungkan ke wd/hub

Jika pengujian Anda diharapkan terhubung ke wd/hub, Anda dapat menambahkan --url-base=wd/hub saat meluncurkan server:

$ ./chromedriver --url-base=wd/hub