一、Selenium入門操作
Selenium是一款免費的自動化測試工具,它能模擬用戶真實操作,並且可以獲取到瀏覽器的渲染結果。因此,Selenium被廣泛用於Web應用程序的測試和自動化。
在進行Selenium入門操作之前,首先需要安裝Selenium。Selenium有多種支持語言,如Java、Python、Ruby等。 以Python為例,可以使用pip安裝:
pip install selenium
接着,需要下載相應的瀏覽器驅動程序。你可以訪問Selenium官方網站,查看支持的瀏覽器和驅動程序的下載地址。
以下是Selenium的基本框架:
from selenium import webdriver
# 加載瀏覽器驅動
driver = webdriver.Chrome('path/to/chromedriver')
# 訪問網頁
driver.get('https://www.baidu.com')
# 執行操作
# ...
# 退出瀏覽器
driver.quit()
二、Selenium入門操作訪問百度頁面
以訪問百度頁面為例,以下是Selenium的完整代碼示例:
from selenium import webdriver
# 加載瀏覽器驅動
driver = webdriver.Chrome('path/to/chromedriver')
# 訪問網頁
driver.get('https://www.baidu.com')
# 獲取搜索框並輸入查詢內容
search_box = driver.find_element_by_name('wd')
search_box.send_keys('Selenium')
# 獲取提交按鈕並點擊
submit_button = driver.find_element_by_id('su')
submit_button.click()
# 退出瀏覽器
driver.quit()
三、Selenium參數化
在測試中,經常需要對同一個功能進行多組不同的測試。為了避免手動修改測試數據,可以使用參數化功能。Selenium支持使用數據驅動模式,即通過不同的參數執行同一個測試用例。
使用Python的unittest框架進行測試,可以使用@parameterized裝飾器實現參數化:
import unittest
from parameterized import parameterized
from selenium import webdriver
class BaiduSearchTest(unittest.TestCase):
@parameterized.expand([
('Selenium', ),
('Python', ),
('Java', ),
])
def test_search(self, keyword):
driver = webdriver.Chrome('path/to/chromedriver')
driver.get('https://www.baidu.com')
search_box = driver.find_element_by_name('wd')
search_box.send_keys(keyword)
submit_button = driver.find_element_by_id('su')
submit_button.click()
self.assertIn(keyword, driver.page_source)
driver.quit()
if __name__ == '__main__':
unittest.main()
四、Selenium關閉窗口
在自動化測試過程中,可能需要關閉某個窗口。可以使用Selenium提供的close()或quit()方法,close()關閉當前窗口,quit()關閉所有窗口。
from selenium import webdriver
# 加載瀏覽器驅動
driver = webdriver.Chrome('path/to/chromedriver')
# 訪問網頁
driver.get('https://www.baidu.com')
# 關閉當前窗口
driver.close()
# 退出瀏覽器
# driver.quit()
五、Selenium輸入回車
在模擬用戶操作時,可能需要使用鍵盤輸入回車。可以使用Selenium提供的send_keys()方法,傳遞Keys.RETURN參數實現輸入回車。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
# 加載瀏覽器驅動
driver = webdriver.Chrome('path/to/chromedriver')
# 訪問網頁
driver.get('https://www.baidu.com')
# 獲取搜索框並輸入查詢內容
search_box = driver.find_element_by_name('wd')
search_box.send_keys('Selenium')
# 輸入回車
search_box.send_keys(Keys.RETURN)
# 退出瀏覽器
driver.quit()
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/307105.html