সেলেনিয়াম ওয়েবড্রাইভারে কীভাবে টেনে আনুন এবং ফেলে দিন (উদাহরণ)

কিছু ওয়েব অ্যাপ্লিকেশন, ওয়েব উপাদানগুলিকে টেনে আনতে এবং নির্ধারিত এলাকা বা উপাদানগুলিতে ফেলে দেওয়ার জন্য একটি কার্যকারিতা রয়েছে। আমরা সেলেনিয়াম ওয়েবড্রাইভার ব্যবহার করে এই ধরনের উপাদানগুলির ড্র্যাগ এবং ড্রপ স্বয়ংক্রিয় করতে পারি।

ড্র্যাগ এবং ড্রপের জন্য সিনট্যাক্স।

অ্যাকশন ক্লাসের দুটি পদ্ধতি রয়েছে যা ড্র্যাগ এবং ড্রপ সমর্থন করে। আসুন তাদের অধ্যয়ন করি- | _+_ | |

DragAndDrop পদ্ধতিতে, আমরা দুটি পরামিতি পাস -

  1. প্রথম প্যারামিটার 'Sourcelocator' হল সেই উপাদান যা আমাদের টেনে আনতে হবে
  2. দ্বিতীয় প্যারামিটার 'ডেস্টিনেশনলোকেটার' হল সেই উপাদান যার উপর আমাদের প্রথম উপাদানটি ফেলে দিতে হবে
Actions.dragAndDrop(Sourcelocator, Destinationlocator)

dragAndDropBy পদ্ধতিতে আমরা 3 টি প্যারামিটার পাস করি -

  1. প্রথম প্যারামিটার 'Sourcelocator' হল সেই উপাদান যা আমাদের টেনে আনতে হবে
  2. দ্বিতীয় প্যারামিটার হল x- অক্ষের পিক্সেল মান 2ndযে উপাদানটির উপর আমাদের প্রথম উপাদানটি ফেলে দিতে হবে।
  3. তৃতীয় প্যারামিটার হল ২ য় এলিমেন্টের y- অক্ষের পিক্সেল ভ্যালু যার উপর আমাদের প্রথম এলিমেন্ট ড্রপ করতে হবে।

আসুন কার্যত আপনাকে সেলেনিয়াম ওয়েবড্রাইভার ব্যবহার করে একটি এলিমেন্টের ড্র্যাগ অ্যান্ড ড্রপ 3 টি দৃশ্যের সাথে দেখাই

দৃশ্যপট 1: ব্যাঙ্ক উপাদানটি ড্র্যাগএন্ডড্রপ পদ্ধতিতে নির্দিষ্ট কোষে টেনে এনে ফেলে দেওয়া হয়।

নিচের কোডে, আমরা ফায়ারফক্স ব্রাউজারে প্রদত্ত ইউআরএল চালু করি এবং তারপর BANK এলিমেন্টটি টেনে এনে ড্র্যাগএন্ডড্রপ পদ্ধতির মাধ্যমে ডেবিট সাইড ব্লকে ফেলে দেই।

Actions.dragAndDropBy(Sourcelocator, x-axis pixel of Destinationlocator, y-axis pixel of Destinationlocator)

কোড ব্যাখ্যা: উপরের কোডে আমরা ফায়ারফক্স ব্রাউজারে প্রদত্ত ইউআরএল চালু করি এবং তারপর ব্যাঙ্ক উপাদানটি টেনে আনুন এবং ড্র্যাগএন্ডড্রপ পদ্ধতির মাধ্যমে ডেবিট সাইড ব্লকে ড্রপ করুন। নিচে সংক্ষেপে ব্যাখ্যা করা হলো:

প্রথম, আমরা 1 ক্যাপচার করিসেন্টউপাদান যা আমাদের ভেরিয়েবল 'থেকে' টেনে আনতে হবে। | _+_ |

দ্বিতীয়ত, আমরা ২ য় উপাদান ক্যাপচার করি যার উপর আমাদের ১ ম উপাদানকে ভেরিয়েবল 'টু' তে ফেলে দিতে হবে। | _+_ |

তৃতীয়ত, আমরা অ্যাকশন ক্লাসের অবজেক্ট তৈরি করি কারণ আমরা অ্যাকশন ক্লাসের পদ্ধতি ব্যবহার করি। | _+_ |

ড্র্যাগ এন্ড ড্রপ এলিমেন্টের জন্য আমরা অ্যাকশন ক্লাসের ড্রাগ এন্ডড্রপ পদ্ধতি ব্যবহার করি এবং প্রথম উপাদান (সোর্সলোকেটর) 'থেকে' এবং দ্বিতীয় এলিমেন্ট (ডেস্টিনেশন লোকেটর) 'টু' হিসেবে প্যারামিটার পাস করি। নীচের লাইনটি 1 টেনে আনবেসেন্টউপাদান এবং এটি 2 এ ড্রপndউপাদান

act.dragAndDrop (From, To)। build ()। performance ();

স্ক্রিপ্ট সম্পাদন।

নীচের স্ক্রিনশটে দেখানো হিসাবে এখন আপনি গ্রহন থেকে উপরের স্ক্রিপ্টটি একের পর এক চালাতে পারেন।

স্ক্রিপ্ট চালানোর সময় এখানে আউটপুট দেওয়া হয়

দৃশ্যকল্প 2: ব্যাঙ্ক উপাদানটি ড্র্যাগএন্ডড্রপ পদ্ধতিতে নির্দিষ্ট কোষে টেনে এনে ফেলে দেওয়া হয়।

এই পরিস্থিতিতে, আমরা ব্রাউজারে প্রদত্ত ইউআরএলটি চালু করি এবং তারপরে ব্যাংক উপাদানটি টেনে আনুন এবং ড্র্যাগএন্ডড্রপবি পদ্ধতির মাধ্যমে ডেবিট সাইড ব্লকে ফেলে দিন। DragAndDropBy, আমরা উপাদানটির পিক্সেল খুঁজে বের করতে হবে।

কিভাবে পিক্সেল খুঁজে পাওয়া যায়?

ক্রোম বা ফায়ারফক্সে ইউআরএল খুলুন এবং নীল রঙের তীরটিতে ক্লিক করুন।

পরবর্তীতে যে কোন উপাদানে ক্লিক করুন যার জন্য আপনি পিক্সেল জানতে চান।

আপনি নীচের স্ক্রিনশটে দেখানো উপাদানটির উপরে পিক্সেল পাবেন।

 import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.interactions.Actions; import org.testng.annotations.Test; public class DragAndDrop { WebDriver driver; @Test public void DragnDrop() { System.setProperty('webdriver.chrome.driver',' E://Selenium//Selenium_Jars//chromedriver.exe '); driver= new ChromeDriver(); driver.get('https://demo.on2vhf.be/test/drag_drop.html'); //Element which needs to drag. WebElement From=driver.findElement(By.xpath('//*[@id='credit2']/a')); //Element on which need to drop. WebElement To=driver.findElement(By.xpath('//*[@id='bank']/li')); //Using Action class for drag and drop. Actions act=new Actions(driver); //Dragged and dropped. act.dragAndDrop(From, To).build().perform(); } } 

বিঃদ্রঃ: স্ক্রিন রেজোলিউশন এবং ব্রাউজারের আকারের সাথে পিক্সেলের মান পরিবর্তিত হয়। এই পদ্ধতি তাই নির্ভরযোগ্য নয় এবং ব্যাপকভাবে ব্যবহৃত হয় না।

দৃশ্যকল্প 3: কিছু উপাদান টেনে এনে ফেলে দেওয়া হয় এবং তারপর যাচাই করুন বার্তাটি প্রদর্শিত হয়েছে কি না।

নিম্নলিখিত কোডে, আমরা ব্রাউজারে প্রদত্ত URL চালু করি এবং তারপর BANK, SALES, 500 এর মত উপাদানগুলিকে টেনে আনুন এবং সংশ্লিষ্ট ব্লকে ফেলে দিন। একবার হয়ে গেলে আমরা আউটপুট বার্তা যাচাই করি। | _+_ |

আউটপুট বিশ্লেষণ

আউটপুটে, আপনি দেখতে পারেন উপাদানটি টেনে এনে সংজ্ঞায়িত উপাদানটিতে ফেলে দেওয়া হয়েছে। আপনি আউটপুটের GIF চেক করতে পারেন।

আপনার ব্রাউজার ভিডিও ট্যাগ সমর্থন করে না।

সারসংক্ষেপ

  • উপরের টিউটোরিয়ালগুলিতে, আমরা ওয়েবড্রাইভারে অ্যাকশন পদ্ধতির মাধ্যমে ওয়েব অ্যাপ্লিকেশনটির ড্র্যাগ অ্যান্ড ড্রপ কার্যকারিতা তুলে ধরছি:
  • dragAndDrop (Sourcelocator, Destinationlocator)
  • টেনে আনুন
  • প্রথমে উপাদানটিকে টেনে আনতে এবং ড্রপ করার জন্য আমরা অ্যাকশন ক্লাস থেকে DragAndDrop পদ্ধতি ব্যবহার করেছি যেখানে আমরা 2 টি প্যারামিটার পাস করি, 1সেন্টপ্যারামিটার হল সেই উপাদান যা আমাদের টেনে আনতে হবে এবং 2ndপ্যারামিটার হল সেই উপাদান যার উপর আমাদের 1 ড্রপ করতে হবেসেন্টউপাদান
  • দ্বিতীয়ত, আমরা অ্যাকশন ক্লাস থেকে ড্র্যাগএন্ডড্রপবি পদ্ধতি ব্যবহার করেছি যেখানে আমরা 3 টি প্যারামিটার পাস করি, 1 ম প্যারামিটার হল উপাদান যা আমাদের টেনে আনতে হবে, 2ndপ্যারামিটার হল x- অক্ষের পিক্সেল মান 2ndউপাদান, 3rdপ্যারামিটার হল 2 এর y- অক্ষ পিক্সেল মানndউপাদান