গত তিন বছর ধরে Chrome-এর ব্রাউজার অটোমেশন টিম WebDriver BiDi তৈরি করতে ব্রাউজারস্ট্যাকের মতো অন্যান্য প্রধান ব্রাউজার এবং টুলিং বিক্রেতাদের সাথে সহযোগিতা করছে—একটি নতুন ব্রাউজার অটোমেশন প্রোটোকল যা ব্রাউজার জুড়ে দ্বি-মুখী অটোমেশন ওয়ার্কফ্লো সক্ষম করে। এই ওয়ার্কফ্লোগুলি আগে শুধুমাত্র Chromium-ভিত্তিক ব্রাউজারগুলিতে মালিকানাধীন Chrome DevTools প্রোটোকলের সাথে সম্ভব ছিল।
আজকের এই ভাগ করা প্রচেষ্টার একটি গুরুত্বপূর্ণ মাইলফলক চিহ্নিত করে কারণ WebDriver BiDi অবশেষে আজ BrowserStack দিয়ে শুরু করে ডেভেলপারদের জন্য উৎপাদনের জন্য প্রস্তুত হয়ে উঠেছে।
সেলেনিয়াম এবং ব্রাউজারস্ট্যাক
সম্প্রতি BrowserStack Selenium-এর অফিসিয়াল ডেভেলপমেন্ট পার্টনার হয়ে উঠেছে , একটি পরিপক্ক, ওপেন-সোর্স ব্রাউজার অটোমেশন ফ্রেমওয়ার্ক যা WebDriver BiDi-তেও অবদান রেখেছে। এই অংশীদারিত্বটি একটি সমৃদ্ধ পরীক্ষামূলক ইকোসিস্টেমে BrowserStack-এর ক্রমাগত বিনিয়োগের একটি প্রমাণ, যার সাথে BrowserStack সেলেনিয়ামের বেশ কয়েকটি মূল রক্ষণাবেক্ষণকারীকেও নিয়োগ করে।
সেলেনিয়াম প্রকল্পের অংশ হল সেলেনিয়াম গ্রিড, যা আপনাকে সমান্তরালভাবে একাধিক ডিভাইস জুড়ে পরীক্ষা চালাতে দেয়। কিন্তু নিজেরাই একটি গ্রিড সেট আপ করা, ডজন ডজন বিভিন্ন ডিভাইস অর্জন করা এবং রক্ষণাবেক্ষণ করা এবং সেগুলিকে উপলব্ধ রাখা কারো কারো জন্য চ্যালেঞ্জিং বা এমনকি অসম্ভবও হতে পারে।
ব্রাউজারস্ট্যাকের মতো হোস্ট করা সেলেনিয়াম গ্রিড সমাধানগুলি বিভিন্ন প্ল্যাটফর্ম এবং ডিভাইস জুড়ে আপনার পরীক্ষাগুলি চালানো সহজ করে তুলতে পারে - সেগুলিকে আপনার নিজের পরিচালনা ছাড়াই৷
সেলেনিয়াম গ্রিডে WebDriver BiDi
সেলেনিয়াম ওয়েবড্রাইভার স্ট্যান্ডার্ডের উপর ভিত্তি করে তৈরি (অনুপস্থিত BiDi নোট করুন) কিন্তু কিছু সময়ের জন্য WebDriver BiDi-এর জন্য পরীক্ষামূলক সমর্থন পেয়েছে। আজ থেকে, আপনি ব্রাউজারস্ট্যাকের হোস্ট করা সেলেনিয়াম গ্রিডে উৎপাদনে WebDriver BiDi কমান্ড ব্যবহার করতে পারেন!
এটি অবশেষে রিয়েল-টাইমে রিয়েল-টাইমে রিকোয়েস্ট ইন্টারসেপশন, অ্যাডভান্সড ইমুলেশন এবং ব্রাউজার ইভেন্টগুলি পরিচালনা করার মতো বৈশিষ্ট্যগুলিকে সক্ষম করে—এবং শুধু ক্রোমে নয়, ওয়েবড্রাইভার BiDi সমর্থন করে এমন প্রতিটি ব্রাউজারে।
নিম্নলিখিত উদাহরণ দেখায় কিভাবে ব্রাউজারস্ট্যাকে WebDriver BiDi ব্যবহার করে লগ ইভেন্ট শুনতে হয়। ধরা লগগুলি তারপর automate.browserstack.com-এ পরিদর্শনের জন্য উপলব্ধ:
const webdriver = require('selenium-webdriver');
// Insert credentials from https://www.browserstack.com/accounts/profile/details
const USERNAME = '<YOUR_USERNAME>';
const ACCESS_KEY = '<YOUR_ACCESS_KEY>';
(async () => {
const driver = await (new webdriver.Builder()
.withCapabilities({
browserName: 'chrome',
'bstack:options': {
seleniumVersion: '4.22.0',
seleniumBidi: true, // Enable WebDriver BiDi.
},
})
.usingServer(
`https://${USERNAME}:${ACCESS_KEY}@hub-cloud.browserstack.com/wd/hub`
)
.build());
// Add a listener for log events.
await driver.script().addConsoleMessageHandler((logEntry) => {
console.log(logEntry.text);
});
await driver.get(
'https://www.selenium.dev/selenium/web/bidi/logEntryAdded.html'
);
// Trigger a console log on the demo page.
await driver.findElement({ id: 'consoleLog' }).click();
await driver.quit();
// Inspect logs on automate.browserstack.com!
})();
BrowserStack মাত্র শুরু
ক্রোম ব্রাউজার অটোমেশন টিম ব্রাউজারস্ট্যাকের দলকে তাদের WebDriver BiDi সমর্থন চালু করার জন্য অভিনন্দন জানায়! আমরা আগামী সপ্তাহগুলিতে ব্রাউজারস্ট্যাক, সেলেনিয়ামের মতো অন্যান্য সরঞ্জামগুলির পাশাপাশি অন্যান্য প্রধান ব্রাউজারগুলি জুড়ে WebDriver BiDi-এর সমর্থন দেখার জন্যও উন্মুখ৷
এবং যদি এই ঘোষণাটি আপনাকে পরীক্ষার বিষয়ে উত্তেজিত করে, কিন্তু আপনি এখনও আপনার পরীক্ষার যাত্রা শুরু না করেন, তাহলে web.dev-এ আমাদের শিখুন টেস্টিং কোর্সটি দেখতে ভুলবেন না।