一、簡介
Selenium是一個自動化測試框架,它支持多種瀏覽器,包括Chrome、Firefox、IE等,並提供了一系列的API供開發者使用。Selenium主要包括三個部分:Selenium IDE、Selenium Client、Selenium WebDriver。其中Selenium WebDriver是Selenium的核心部分,是使用最廣泛的一部分。
二、Selenium WebDriver
Selenium WebDriver是Selenium的最核心的部分,它提供了一系列的API,供開發者使用。Selenium WebDriver的主要作用是模擬用戶的行為進行自動化測試。
在使用Selenium WebDriver時,我們需要安裝合適的瀏覽器驅動程序。例如,如果我們要使用Chrome瀏覽器進行測試,我們需要下載Chrome瀏覽器對應的驅動程序。下載地址為:https://sites.google.com/a/chromium.org/chromedriver/downloads
三、常用API
1. WebDriver
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
這段代碼的作用是創建了一個Chrome瀏覽器的WebDriver實例,並訪問百度首頁。
2. WebElement
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
element = driver.find_element_by_id("kw")
print(element)
這段代碼的作用是創建了一個Chrome瀏覽器的WebDriver實例,並訪問百度首頁。然後通過元素的ID查找到百度首頁的搜索框,並打印出該元素。
3. ActionChains
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
element = driver.find_element_by_id("kw")
actions = ActionChains(driver)
actions.click(element).perform()
這段代碼的作用是創建了一個Chrome瀏覽器的WebDriver實例,並訪問百度首頁。然後通過元素的ID查找到百度首頁的搜索框,並進行了一次鼠標左鍵點擊操作。
四、常用操作
1. 元素定位
Selenium提供了多種方法用於定位元素,包括ID、Name、Class Name、Tag Name、Link Text、Partial Link Text和Xpath。
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
element1 = driver.find_element_by_id("kw")
element2 = driver.find_element_by_name("wd")
element3 = driver.find_element_by_class_name("s_ipt")
element4 = driver.find_element_by_tag_name("input")
element5 = driver.find_element_by_link_text("新聞")
element6 = driver.find_element_by_partial_link_text("新")
element7 = driver.find_element_by_xpath("//input[@id='kw']")
這段代碼分別使用了ID、Name、Class Name、Tag Name、Link Text、Partial Link Text和Xpath這七種方法進行元素定位。
2. 鼠標操作
Selenium提供了多種方法用於模擬鼠標操作,包括單擊、雙擊、右鍵單擊、拖放等。
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
element = driver.find_element_by_id("kw")
actions = ActionChains(driver)
actions.click(element).perform() # 單擊元素
actions.double_click(element).perform() # 雙擊元素
actions.context_click(element).perform() # 右鍵單擊元素
3. 鍵盤操作
Selenium提供了多種方法用於模擬鍵盤操作,包括輸入文本、刪除、回車、Tab等。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
element = driver.find_element_by_id("kw")
element.send_keys("Selenium")
element.send_keys(Keys.ENTER) # 輸入回車,等同於點擊Enter鍵
五、總結
本文主要介紹了Selenium的基本概念、Selenium WebDriver的功能以及常用API和操作。開發者可以根據自己的需要進行API的調用和操作。Selenium是一個強大的自動化測試框架,它可以大大提高測試效率,減少測試成本。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/194225.html