Android

جدیدترین فایل های باینری برای ChromeDriver به عنوان فایل های فشرده برای پلتفرم های میزبان مختلف بسته بندی می شوند.

نسخه‌های قبلی ChromeDriver را می‌توانید در دانلودها پیدا کنید.

برنامه های پشتیبانی شده

ChromeDriver از اجرای آزمایش‌ها در مرورگر Chrome (نسخه 30 و بالاتر) و برنامه‌های مبتنی بر WebView که در Android 4.4 (KitKat) شروع می‌شوند و اشکال‌زدایی وب و جاوا اسکریپت را فعال کرده‌اند، پشتیبانی می‌کند.

می‌توانید برنامه Chrome را از:

پایدار: https://play.google.com/store/apps/details?id=com.android.chrome

پیوندهای زبانی Selenium WebDriver

اتصالات زبان استاندارد پروژه Selenium WebDriver باید برای زبان انتخابی شما برای نوشتن آزمون‌ها نصب شود. این کتابخانه در مدیر بسته محلی شما یا پروژه Selenium موجود است.

به عنوان مثال، پیوندهای زبان برای پایتون را می توان با pip نصب کرد.

$ pip install selenium

Android SDK

SDK را می توان از developer.android.com/sdk/ دانلود کرد.

الزامات دستگاه

از نسخه 33 کروم، دستگاه روت شده لازم نیست. در صورت اجرای آزمایش‌ها بر روی نسخه‌های قبلی Chrome، دستگاه‌ها باید روت شوند زیرا ChromeDriver برای تنظیم آرگومان‌های خط فرمان Chrome نیاز به دسترسی نوشتن به فهرست /data/local دارد.

ChromeDriver را اجرا کنید

  1. سرور Android SDK's Android Debug Bridge (adb) را راه اندازی کنید:

    $ adb start-server
    
  2. اگر قبل از نسخه 33 روی برنامه Chrome آزمایش می‌کنید، مطمئن شوید که پوسته adb به دایرکتوری /data/local در دستگاه دسترسی خواندن و نوشتن دارد:

    $ adb shell su -c chmod 777 /data/local
    
  3. توصیه می‌کنیم ChromeDriver را از طریق کتابخانه Selenium راه‌اندازی کنید، اگرچه می‌توانید به صورت دستی آن را از خط فرمان نیز راه‌اندازی کنید.

    $ ./chromedriver
    

گزینه های فقط اندروید

گزینه‌های Chrome زیر برای برنامه‌های Chrome و WebView قابل اجرا هستند:

  • androidPackage : نام بسته برنامه Chrome یا WebView.
  • androidDeviceSerial : (اختیاری) شماره سریال دستگاهی که برنامه روی آن راه اندازی می شود (به بخش چند دستگاه در زیر مراجعه کنید).
  • androidUseRunningApp : (اختیاری) به‌جای راه‌اندازی برنامه با فهرست داده‌های واضح، به یک برنامه در حال اجرا متصل کنید.

قابلیت های زیر فقط برای برنامه های WebView قابل استفاده است.

  • androidActivity : نام فعالیت میزبان WebView.
  • androidProcess : (اختیاری) نام فرآیند فعالیت میزبان WebView (همانطور که توسط ps داده شده است). در صورت عدم ارائه، نام فرآیند مشابه androidPackage در نظر گرفته می‌شود.

یک آزمایش اجرا کنید

آزمایش‌ها باید نام بسته برنامه را از طریق گزینه androidPackage به ChromeDriver ارسال کنند. به عنوان مثال، یک تست حداقلی پایتون به شکل زیر است:

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

دستگاه های متعدد

برای استفاده از یک دستگاه خاص برای یک جلسه، androidDeviceSerial به عنوان گزینه Chrome مشخص کنید.

اگر شماره سریال مشخص نشده باشد، سرور به طور تصادفی یک دستگاه استفاده نشده را برای مرتبط کردن با هر جلسه انتخاب می کند. اگر همه دستگاه‌ها قبلاً جلسات فعال داشته باشند، خطا برمی‌گردد، بنابراین تست‌ها باید مطمئن شوند که پس از اتمام، تماس را ترک می‌کنند.

به wd/hub متصل شوید

اگر آزمایش‌های شما انتظار دارند به wd/hub متصل شوند، می‌توانید هنگام راه‌اندازی سرور --url-base=wd/hub را اضافه کنید:

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