This script opens a website, adds a cookie, prints it, prints total cookies, deletes the cookie, and checks it is gone.
Selenium Python
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import time
options = Options()
options.add_argument('--headless=new')
service = Service()
driver = webdriver.Chrome(service=service, options=options)
try:
driver.get('https://www.example.com')
# Add a cookie
driver.add_cookie({'name': 'mycookie', 'value': 'cookievalue'})
# Get and print the cookie
cookie = driver.get_cookie('mycookie')
print(cookie)
# Get all cookies
all_cookies = driver.get_cookies()
print(f"Total cookies: {len(all_cookies)}")
# Delete the cookie
driver.delete_cookie('mycookie')
# Verify deletion
cookie_after_delete = driver.get_cookie('mycookie')
print(cookie_after_delete)
finally:
driver.quit()
OutputSuccess
Important Notes
Cookies are domain-specific; you must be on the domain to add or get cookies.
Deleting a cookie removes it from the browser session immediately.
Use headless mode for faster tests without opening a browser window.
Summary
Cookies store small data for websites to remember you.
Selenium lets you add, get, and delete cookies during tests.
Managing cookies helps test login, preferences, and session behavior.
Practice
(1/5)
1. What is the primary purpose of managing cookies in Selenium tests?
easy
A. To install browser extensions automatically
B. To store and manipulate small pieces of data like session info during tests
C. To speed up the browser loading time
D. To change the browser's homepage
Solution
Step 1: Understand what cookies do in web context
Cookies store small data like session IDs or user preferences to remember users.
Step 2: Relate cookie management in Selenium
Selenium manages cookies to simulate user sessions and test behaviors depending on stored data.
Final Answer:
To store and manipulate small pieces of data like session info during tests -> Option B
Quick Check:
Cookies store session data = D [OK]
Hint: Cookies hold session data for tests, not browser settings [OK]
Common Mistakes:
Thinking cookies change browser settings
Confusing cookies with browser speed optimization
Assuming cookies install extensions
2. Which of the following is the correct way to add a cookie named user with value admin in Selenium Python?
easy
A. driver.add_cookie({'name': 'user', 'value': 'admin'})
B. driver.addCookie('user', 'admin')
C. driver.add_cookie('user', 'admin')
D. driver.addCookie({'user': 'admin'})
Solution
Step 1: Recall Selenium Python cookie syntax
The method add_cookie expects a dictionary with keys 'name' and 'value'.
Step 1: Add cookie with name 'session' and value 'xyz123'
The cookie is stored with key 'session' and value 'xyz123'.
Step 2: Retrieve cookie and print its 'value'
Calling get_cookie('session') returns the cookie dict; printing cookie['value'] outputs 'xyz123'.
Final Answer:
xyz123 -> Option C
Quick Check:
get_cookie('session')['value'] = 'xyz123' [OK]
Hint: get_cookie returns dict; access 'value' key for cookie value [OK]
Common Mistakes:
Printing cookie name instead of value
Expecting get_cookie to return just the value string
Confusing cookie dict with string
4. Identify the error in this Selenium Python code for deleting a cookie:
driver.delete_cookie('user')
medium
A. Method name should be deleteCookie instead of delete_cookie
B. delete_cookie requires a dictionary, not a string
C. Must call driver.delete_all_cookies() instead
D. No error; this is the correct way to delete a cookie by name
Solution
Step 1: Check Selenium Python method for deleting a cookie
The method delete_cookie takes the cookie name as a string argument.
Step 2: Verify the code usage
Using driver.delete_cookie('user') correctly deletes the cookie named 'user'.
Final Answer:
No error; this is the correct way to delete a cookie by name -> Option D
Quick Check:
delete_cookie('name') is correct syntax = C [OK]
Hint: delete_cookie takes cookie name string, not dict [OK]
Common Mistakes:
Using camelCase method names
Passing dict instead of string
Confusing delete_cookie with delete_all_cookies
5. You want to test a website's behavior when a cookie named theme is set to dark. Which sequence of Selenium Python commands correctly sets this cookie, verifies it, and then deletes it?
hard
A. driver.add_cookie({'name': 'theme', 'value': 'dark'})\ncookie = driver.get_cookie('theme')\nassert cookie['value'] == 'dark'\ndriver.delete_cookie('theme')
B. driver.add_cookie('theme', 'dark')\ncookie = driver.get_cookie('theme')\nassert cookie == 'dark'\ndriver.delete_cookie('theme')
C. driver.add_cookie({'theme': 'dark'})\ncookie = driver.get_cookie('theme')\nassert cookie['value'] == 'dark'\ndriver.delete_cookie('theme')
D. driver.add_cookie({'name': 'theme', 'value': 'dark'})\ncookie = driver.get_cookie('theme')\nassert cookie == 'dark'\ndriver.delete_cookie('theme')
Solution
Step 1: Add cookie with correct dictionary format
Use add_cookie({'name': 'theme', 'value': 'dark'}) to set the cookie properly.
Step 2: Retrieve cookie and assert its 'value'
Get the cookie dict with get_cookie('theme') and check cookie['value'] == 'dark'.
Step 3: Delete the cookie by name
Use delete_cookie('theme') to remove the cookie after test.
Final Answer:
Correct sequence with dict, assert on value, and delete by name -> Option A
Quick Check:
add_cookie dict + get_cookie['value'] + delete_cookie(name) = B [OK]
Hint: Add cookie with dict, assert value key, delete by name [OK]
Common Mistakes:
Passing cookie as separate args instead of dict
Asserting cookie object equals string
Using wrong keys in cookie dict
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.