自動化測試系列 python+selenium的使用教程(一)
Selenium也是一個用於Web應用程序的自動化測試工具,功能強大,可直接運行在瀏覽器中,支持大部分主流瀏覽器,支持自動錄製動作和自動生成,最重要的是支持多種主流語言包括java,python等。
python,一門高級編程語言,優雅、明確、簡單、易學,具有較好的可以執行,可擴展性和可嵌入性,而且還有豐富的庫。
Selenium的版本分別是兩種,一是Selenium-IDE,目前只有FireFox版本。二是Selenium-RC,可使用具體的語言來編寫測試類。個人喜歡Python的方式。
一、前期準備
1.安裝python,推薦pycharm,記得配置環境變數。然後進入cmd命令中輸入「python」命令,如果配置成功,會出現python相關信息,如果配置環境變數失敗,會出現「python不是內部命令」的提示。
2.安裝selenium,使用pip命令安裝,或是在Pycharm中的設置中添加selenium。
3.安裝Chrome driver,這是谷歌瀏覽器驅動程序,selenium操作Chrome瀏覽器需要Chrome driver來驅動。驅動的下載地址:http://chromedriver.storage.googleapis.com/index.html。需要注意的是,Chrome driver的版本需要與Chrome的版本對應,網上找的對應錶鏈接:https://blog.csdn.net/cz9025/article/details/70160273。下載之後把文件解壓,然後放在本機Chrome瀏覽器文件路徑里,比如裝在C盤時,在此路徑下C:Program Files (x86)GoogleChromeApplication
二、第一個腳本
前期準備好之後,來開始第一個腳本
# -*- coding: utf-8 -*-
from selenium import webdriver
driver = webdriver.Chrome()
first_url = https://www.baidu.com
driver.get(first_url)
driver.find_element_by_id(kw).send_keys("test")
driver.find_element_by_class_name(s_btn).click()
print driver.title
driver.quit()
解釋一下
# -*- coding: utf-8 -*- #防止亂碼
from selenium import webdriver #使用相關的函數,需要先導入包
driver = webdriver.Chrome() #我們需要的是谷歌瀏覽器,如果使用Firefox,IE,就要把Chrome替換。
first_url = https://www.baidu.com
driver.get(first_url) 把百度的網址賦給first_url,使用get方法打開網址
driver.find_element_by_id(kw).send_keys("test") #百度輸入框的id叫kw,一個控制項有若干屬性id,name,class_name,在百度輸入框中輸入test
driver.find_element_by_class_name(s_btn).click() #搜索的按鈕的class_name為『s_btn』,點擊一下按鈕
print driver.title #列印網頁的標題
driver.quit() #退出並關閉窗口的每一個相關的驅動程序
三、添加休眠
import time 導入time包,使用相關的函數
time.sleep()函數,當出現網路原因或者頁面載入慢時,比如搜索輸入框輸入了test,而搜索按鈕沒有顯示出來,腳本就會報錯,因此該函數可以避免因為網路原因使腳本執行失敗
推薦閱讀:
※如何用python 寫一個爬蟲用來爬P 站特定標籤下的高贊作品?
※在數據分析方面,比起python,excel的局限性在哪?
※學習TensorFlow,Python 需要掌握到什麼程度才可以?
※十分鐘搞定pandas
※python 函數