সেলেনিয়াম - নতুন ব্রাউজার উইন্ডোতে কীভাবে কুকিজ পুনরুদ্ধার করবেন

ধরুন আমাদের নীচের দৃশ্যের জন্য পরীক্ষা করতে হবে:

1. লগইন পৃষ্ঠাতে যান এবং অ্যাপ্লিকেশনটিতে লগইন করুন
২. ব্রাউজারটি বন্ধ করুন
৩. ব্রাউজারটি খুলুন এবং লগইন পৃষ্ঠায় যান - ব্যবহারকারীর লগইন ফর্মটি দেখা উচিত নয় এবং ইতিমধ্যে লগ ইন করা উচিত।

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


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

import org.openqa.selenium.By; import org.openqa.selenium.Cookie; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import java.util.Set; public class CookieTest {
WebDriver driver;
@Test
public void login_state_should_be_restored() {
driver = new FirefoxDriver();

driver.get('http://www.example.com/login');
driver.findElement(By.id('username')).sendKeys('admin');
driver.findElement(By.id('password')).sendKeys('12345');
driver.findElement(By.id('login')).click();

Assert.assertTrue(


driver.findElement(By.id('welcome')).isDisplayed());

//Before closing the browser, read the cookies
Set allCookies = driver.manage().getCookies();

driver.close();

//open a new browser window
driver = new FirefoxDriver();

//restore all cookies from previous session
for(Cookie cookie : allCookies) {

driver.manage().addCookie(cookie);
}

driver.get('http://www.example.com/login'); //Login page should not be disaplyed
Assert.assertTrue(


driver.findElement(By.id('welcome')).isDisplayed());

driver.close();
} }

আকর্ষণীয় নিবন্ধ