from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
import unittest
class TestCookieManagement(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Chrome(service=Service())
self.driver.get('https://example.com')
def test_cookie_management(self):
driver = self.driver
# Add cookie
cookie = {'name': 'test_cookie', 'value': 'cookie_value'}
driver.add_cookie(cookie)
# Retrieve cookie and verify value
retrieved_cookie = driver.get_cookie('test_cookie')
self.assertIsNotNone(retrieved_cookie, "Cookie 'test_cookie' should exist")
self.assertEqual(retrieved_cookie['value'], 'cookie_value', "Cookie value should be 'cookie_value'")
# Delete cookie
driver.delete_cookie('test_cookie')
# Verify cookie is deleted
deleted_cookie = driver.get_cookie('test_cookie')
self.assertIsNone(deleted_cookie, "Cookie 'test_cookie' should be deleted")
def tearDown(self):
self.driver.quit()
if __name__ == '__main__':
unittest.main()This test uses Python's unittest framework with Selenium WebDriver.
setUp: Opens Chrome browser and navigates to example.com.
test_cookie_management: Adds a cookie named 'test_cookie' with value 'cookie_value'. Then it retrieves the cookie and asserts it exists and has the correct value. Next, it deletes the cookie and asserts it no longer exists.
tearDown: Closes the browser after the test.
This structure keeps tests clean and easy to understand. Assertions check each step clearly.