নির্ভরতা
ChromeDriver-এর জন্য বাইনারিগুলি ডাউনলোড পৃষ্ঠায় বিভিন্ন হোস্ট প্ল্যাটফর্মের জন্য জিপ ফাইল হিসাবে প্যাকেজ পাওয়া যেতে পারে।
সমর্থিত অ্যাপস
ChromeDriver ক্রোম ব্রাউজার (সংস্করণ 30+) এবং Android 4.4 (KitKat) থেকে শুরু হওয়া WebView-ভিত্তিক অ্যাপ্লিকেশানগুলিতে চলমান পরীক্ষা সমর্থন করে যা ওয়েব ডিবাগিং এবং JavaScript সক্ষম করেছে৷ আপনি এর থেকে Chrome অ্যাপ ইনস্টল করতে পারেন:
স্থিতিশীল: https://play.google.com/store/apps/details?id=com.android.chrome
সেলেনিয়াম ওয়েবড্রাইভার ল্যাঙ্গুয়েজ বাইন্ডিং
আপনার পরীক্ষা লেখার জন্য আপনার পছন্দের ভাষার জন্য স্ট্যান্ডার্ড সেলেনিয়াম প্রোজেক্ট WebDriver ভাষা বাইন্ডিং ইনস্টল করা দরকার। এই লাইব্রেরিটি আপনার বন্ধুত্বপূর্ণ স্থানীয় প্যাকেজ ম্যানেজার বা সেলেনিয়াম প্রকল্প ( https://www.seleniumhq.org/download/ ) থেকে উপলব্ধ। উদাহরণস্বরূপ, পাইথনের ভাষা বাইন্ডিংগুলি পিপ দিয়ে ইনস্টল করা যেতে পারে।
$ pip install selenium
অ্যান্ড্রয়েড এসডিকে
SDK ডাউনলোড করা যেতে পারে developer.android.com/sdk/ থেকে
ডিভাইসের প্রয়োজনীয়তা
Chrome সংস্করণ 33 অনুযায়ী, একটি রুট করা ডিভাইসের আর প্রয়োজন নেই। Chrome-এর নিম্ন সংস্করণে পরীক্ষা চালানো হলে, Chrome-এর কমান্ড লাইন আর্গুমেন্ট সেট করার জন্য ChromeDriver-এর /data/local
ডিরেক্টরিতে লেখার অ্যাক্সেস প্রয়োজন বলে ডিভাইসগুলিকে রুট করতে হবে।
ChromeDriver চালান
Android SDK এর Android ডিবাগ ব্রিজ (adb) সার্ভার শুরু করুন:
$ adb start-server
যদি 33 সংস্করণের আগে Chrome অ্যাপে পরীক্ষা করা হয়, তাহলে নিশ্চিত করুন যে adb শেল ডিভাইসে /data/local ডিরেক্টরিতে রিড/রাইট অ্যাক্সেস করেছে:
$ adb shell su -c chmod 777 /data/local
এটি সাধারণত সুপারিশ করা হয় যে আপনি সেলেনিয়াম লাইব্রেরির মাধ্যমে ChromeDriver শুরু করুন, যদিও আপনি কমান্ড লাইন থেকে ম্যানুয়ালি এটি শুরু করতে পারেন। আরও তথ্যের জন্য শুরু করা দেখুন।
$ ./chromedriver
অ্যান্ড্রয়েড-নির্দিষ্ট বিকল্প
নিম্নলিখিত Chrome বিকল্পগুলি Chrome এবং WebView অ্যাপ উভয়ের জন্যই প্রযোজ্য:
-
androidPackage
: Chrome বা WebView অ্যাপের প্যাকেজের নাম। -
androidDeviceSerial
: (ঐচ্ছিক) যে ডিভাইসের সিরিয়াল নম্বরে অ্যাপটি চালু করতে হবে (নীচে একাধিক ডিভাইস বিভাগ দেখুন)। -
androidUseRunningApp
: (ঐচ্ছিক) একটি পরিষ্কার ডেটা ডিরেক্টরি সহ অ্যাপটি চালু করার পরিবর্তে একটি ইতিমধ্যে-চলমান অ্যাপের সাথে সংযুক্ত করুন।
নিম্নলিখিত ক্ষমতাগুলি শুধুমাত্র WebView অ্যাপগুলির জন্য প্রযোজ্য৷
- androidActivity : ওয়েবভিউ হোস্ট করা কার্যকলাপের নাম।
- 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()
একাধিক ডিভাইস
একটি সেশনের জন্য একটি নির্দিষ্ট ডিভাইস ব্যবহার করতে, একটি Chrome বিকল্প হিসাবে androidDeviceSerial
উল্লেখ করুন।
যদি সিরিয়াল নম্বর নির্দিষ্ট করা না থাকে, সার্ভার প্রতিটি সেশনের সাথে যুক্ত করার জন্য এলোমেলোভাবে একটি অব্যবহৃত ডিভাইস নির্বাচন করে। সমস্ত ডিভাইসে ইতিমধ্যে সক্রিয় সেশন থাকলে একটি ত্রুটি ফেরত দেওয়া হয়, তাই পরীক্ষা শেষ হলে কল প্রস্থান করার বিষয়টি নিশ্চিত করা উচিত।
wd/hub
সাথে সংযোগ করুন
যদি আপনার পরীক্ষাগুলি wd/hub
এর সাথে সংযোগ করার আশা করে, আপনি সার্ভার চালু করার সময় --url-base=wd/hub
যোগ করতে পারেন:
$ ./chromedriver --url-base=wd/hub