Python+Selenium+Edge實現簡單自動化測試百度搜索
安裝Selenium
Selenium是一個用於Web應用程式測試的工具。Selenium測試直接執行在瀏覽器中,就像真正的使用者在操作一樣。這個工具的主要功能包括:測試與瀏覽器的相容性——測試你的應用程式看是否能夠很好得工作在不同瀏覽器和作業系統之上。測試系統功能——建立迴歸測試檢驗軟體功能和使用者需求。支援自動錄製動作和自動生成 .Net、Java、Perl等不同語言的測試指令碼。
在cmd
裡面使用pip install selenium
命令進行安裝即可
顯示Successfully installed selenium
代表安裝成功,底下的WARNING提示的是有新的pip版本,詢問要不要升級,用當前版本也可以用。
下載Edge瀏覽器驅動
在Web自動化測試,可以選擇自己的瀏覽器載入驅動,題主使用的是Edge瀏覽器,所以使用
EdgeDriver
驅動
-
在位址列檢視當前的瀏覽器版本
edge://settings/help
開啟設定頁面檢視,題主的Edge版本為版本 91.0.864.54 (官方內部版本) (64 位)
-
開啟Edge瀏覽器驅動下載頁面:在裡面找到對應的版本號的驅動進行下載
-
將驅動匯入,匯入驅動有2種辦法,這裡題主使用第一種方法:
-
第一種:將下載的壓縮包裡面的
msedgedriver.exe
直接解壓到python安裝目錄的Scripts
資料夾中即可 -
第二種:將下載的壓縮包裡面的
msedgedriver.exe
path
環境變數
-
查詢要使用的頁面元素:
這裡以百度為例
搜尋欄的元素:id="kw"
搜尋按鈕的元素:id="su"
建立一個python檔案
# 匯入time,用來設定停頓時間 import time # 匯入webdriver包 from selenium import webdriver # 載入msedgedriver驅動 driver = webdriver.Edge(executable_path='msedgedriver.exe') # 通過get方法傳送網址 driver.get("https://www.baidu.com/") # 設定停頓在頁面的秒數 time.sleep(1) # 查詢id名為kw的頁面元素,模擬鍵盤輸入值測試 driver.find_element('id', 'kw').send_keys("測試") # 查詢id名為su的頁面元素,模擬滑鼠進行點選 driver.find_element('id', 'su').click() # 設定停頓在頁面的秒數 time.sleep(1) # 查詢id名為kw的頁面元素,進行清空搜尋欄 driver.find_element('id', 'kw').clear() # 設定停頓在頁面的秒數 time.sleep(2) # 退出測試並關閉瀏覽器 driver.quit()
其他查詢元素:
程式中主要的操作是對元素的查詢,常見的方法包括:
根據id屬性查詢的select_element_by_id()
根據class屬性查詢的select_element_by_class_name()
根據tag名稱查詢的select_element_by_tag_name()
根據css格式查詢的select_element_by_css_selector()
根據xpath格式查詢的select_element_by_xpath()