جدیدترین فایل های باینری برای 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 را اجرا کنید
سرور Android SDK's Android Debug Bridge (adb) را راه اندازی کنید:
$ adb start-server
اگر قبل از نسخه 33 روی برنامه Chrome آزمایش میکنید، مطمئن شوید که پوسته adb به دایرکتوری
/data/local
در دستگاه دسترسی خواندن و نوشتن دارد:$ adb shell su -c chmod 777 /data/local
توصیه میکنیم 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