Skip to main content
Automation Python Intermediate

Selenium WebDriver Cheat Sheet

Essential Selenium commands, locators, waits, and patterns. Keep this open while you code.

Selenium WebDriver Cheat Sheet

Setup

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Chrome()
driver.get("https://example.com")

Locators

Strategy Example
By.ID driver.find_element(By.ID, "email")
By.CSS_SELECTOR driver.find_element(By.CSS_SELECTOR, ".btn-primary")
By.XPATH driver.find_element(By.XPATH, "//button[@type='submit']")
By.LINK_TEXT driver.find_element(By.LINK_TEXT, "Sign In")
By.CLASS_NAME driver.find_element(By.CLASS_NAME, "error-message")

Waits

# Explicit wait (recommended)
wait = WebDriverWait(driver, 10)
element = wait.until(EC.element_to_be_clickable((By.ID, "submit")))

# Implicit wait (use sparingly)
driver.implicitly_wait(5)

Common Actions

element.click()
element.send_keys("text")
element.clear()
element.text              # Get visible text
element.get_attribute("href")
element.is_displayed()
element.is_enabled()

Assertions

assert "Expected Title" in driver.title
assert element.is_displayed()
assert element.text == "Expected Text"

Cleanup

driver.quit()  # Always quit in teardown
← All cheat sheets