এই পৃষ্ঠাটি ডেস্কটপে (Windows/Mac/Linux) আপনার ওয়েবসাইট পরীক্ষা করার জন্য কীভাবে ChromeDriver ব্যবহার শুরু করবেন তা নথিভুক্ত করে। এছাড়াও আপনি Android এর সাথে শুরু করা বা ChromeOS এর সাথে শুরু করা পড়তে পারেন৷
সেটআপ
ChromeDriver হল একটি পৃথক এক্সিকিউটেবল যা সেলেনিয়াম ওয়েবড্রাইভার Chrome নিয়ন্ত্রণ করতে ব্যবহার করে। WebDriver অবদানকারীদের সাহায্যে Chromium টিম এটি রক্ষণাবেক্ষণ করে। আপনি যদি সেলেনিয়াম ওয়েবড্রাইভারের সাথে অপরিচিত হন তবে আপনার সেলেনিয়াম সাইটটি পরীক্ষা করা উচিত।
ChromeDriver-এর সাথে চালানোর জন্য আপনার পরীক্ষা সেটআপ করতে এই পদক্ষেপগুলি অনুসরণ করুন:
- Chromium এবং Google Chrome একটি স্বীকৃত স্থানে ইনস্টল করা আছে তা নিশ্চিত করুন।
- ChromeDriver আশা করে যে আপনি আপনার প্ল্যাটফর্মের জন্য ডিফল্ট অবস্থানে Chrome ইনস্টল করবেন। আপনি একটি বিশেষ ক্ষমতা সেট করে ChromeDriver কে একটি কাস্টম অবস্থান ব্যবহার করতে বাধ্য করতে পারেন৷
- আপনার প্ল্যাটফর্মের জন্য ChromeDriver বাইনারি ডাউনলোড করুন ।
- ডাউনলোড করা ChromeDriver এক্সিকিউটেবল খুঁজে পেতে WebDriverকে সাহায্য করুন।
এই পদক্ষেপগুলির যে কোনও কাজ করা উচিত:
- আপনার PATH পরিবেশ ভেরিয়েবলে ChromeDriver অবস্থান অন্তর্ভুক্ত করুন
- ( শুধুমাত্র Java )
webdriver.chrome.driver
সিস্টেম সম্পত্তি ব্যবহার করে এর অবস্থান নির্দিষ্ট করুন (নীচের নমুনা দেখুন) - ( শুধুমাত্র পাইথন )
webdriver.Chrome
ইনস্ট্যান্ট করার সময় ChromeDriver-এর পথটি অন্তর্ভুক্ত করুন।Chrome। নিম্নলিখিত নমুনা দেখুন.
নমুনা জাভা পরীক্ষা
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.*;
import org.junit.Test;
public class GettingStarted {
@Test
public void testGoogleSearch() throws InterruptedException {
// Optional. If not specified, WebDriver searches the PATH for chromedriver.
// System.setProperty("webdriver.chrome.driver", "/path/to/chromedriver");
// WebDriver driver = new ChromeDriver();
driver.get("http://www.google.com/");
Thread.sleep(5000); // Let the user actually see something!
WebElement searchBox = driver.findElement(By.name("q"));
searchBox.sendKeys("ChromeDriver");
searchBox.submit();
Thread.sleep(5000); // Let the user actually see something!
driver.quit();
}
}
নমুনা পাইথন পরীক্ষা
import time
from selenium import webdriver
driver = webdriver.Chrome('/path/to/chromedriver') # Optional argument, if not specified will search path.
driver.get('http://www.google.com/');
time.sleep(5) # Let the user actually see something!
search_box = driver.find_element_by_name('q')
search_box.send_keys('ChromeDriver')
search_box.submit()
time.sleep(5) # Let the user actually see something!
driver.quit()
ChromeDriver-এর জীবনকাল নিয়ন্ত্রণ করুন
ChromeDriver ক্লাস তৈরির সময় ChromeDriver সার্ভার প্রক্রিয়া শুরু করে এবং প্রস্থান করার সময় এটি বন্ধ করে দেয়। এটি বড় টেস্ট স্যুটগুলির জন্য একটি উল্লেখযোগ্য পরিমাণ সময় নষ্ট করতে পারে যেখানে প্রতি পরীক্ষায় একটি ChromeDriver উদাহরণ তৈরি করা হয়। এর প্রতিকারের জন্য দুটি বিকল্প রয়েছে, ChromeDriverService এবং ChromeDriver আলাদাভাবে শুরু করা।
ChromeDriverService
ChromeDriverService ব্যবহার করুন। এটি বেশিরভাগ ভাষার জন্য উপলব্ধ এবং আপনাকে ChromeDriver সার্ভার নিজেই শুরু বা বন্ধ করতে দেয়৷ JUnit 4 সহ এখানে একটি জাভা উদাহরণ রয়েছে:
import java.io.*;
import org.junit.*;
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.*;
import org.openqa.selenium.remote.*;
public class GettingStartedWithService {
private static ChromeDriverService service;
private WebDriver driver;
@BeforeClass
public static void createAndStartService() throws IOException {
service = new ChromeDriverService.Builder()
.usingDriverExecutable(new File("/path/to/chromedriver"))
.usingAnyFreePort()
.build();
service.start();
}
@AfterClass
public static void stopService() {
service.stop();
}
@Before
public void createDriver() {
driver = new RemoteWebDriver(service.getUrl(), new ChromeOptions());
}
@After public void quitDriver() {
driver.quit();
}
@Test
public void testGoogleSearch() {
driver.get("http://www.google.com");
// rest of the test...
}
}
পাইথন:
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
service = Service('/path/to/chromedriver')
service.start()
driver = webdriver.Remote(service.service_url)
driver.get('http://www.google.com/');
time.sleep(5) # Let the user actually see something!
driver.quit()
আলাদাভাবে ChromeDriver শুরু করুন
আপনার পরীক্ষা চালানোর আগে আলাদাভাবে ChromeDriver সার্ভার শুরু করুন, এবং Remote WebDriver ব্যবহার করে এর সাথে সংযোগ করুন।
টার্মিনাল:
$ ./chromedriver
Starting ChromeDriver
76.0.3809.68 (...) on port 9515
...
জাভা:
import java.net.*;
import org.openqa.selenium.*;
import org.openqa.selenium.chrome.*;
import org.openqa.selenium.remote.*;
public class GettingStartedRemote {
public static void main(String[] args) throws MalformedURLException {
WebDriver driver = new RemoteWebDriver(
new URL("http://127.0.0.1:9515"),
new ChromeOptions());
driver.get("http://www.google.com");
driver.quit();
}
}