使用Python+selenium實(shí)現(xiàn)第一個(gè)自動(dòng)化測試腳本
最近在學(xué)web自動(dòng)化,記錄一下學(xué)習(xí)過程。
此處我選用python3.6+selenium3.0,均用最新版本,以適應(yīng)未來需求。
環(huán)境:windows10,64位
一、安裝python
python官方下載地址:https://www.python.org/downloads/

進(jìn)入頁面就有兩個(gè)版本的下載選擇,2.x版本和3.x版本,或者根據(jù)系統(tǒng)選擇對應(yīng)版本。
點(diǎn)擊Windows,跳轉(zhuǎn)到Windows版本頁面:

點(diǎn)選Python3.6.0版本,進(jìn)入3.6版本頁面,拉到頁面下方,找到files

選擇64位or32位(x86-64即64,x86即32位),每種都有3個(gè)版本
embeddable zip file是嵌入式的,可以集成到其它應(yīng)用中;
executable installer是exe可執(zhí)行文件方式安裝;
web-based installer是聯(lián)網(wǎng)安裝包,需要有網(wǎng)絡(luò)環(huán)境;
如果不是嵌入式的,后兩種方式都是可以的。這里我下的是web-based版本,下載后雙擊運(yùn)行,進(jìn)入安裝程序:

可選默認(rèn)安裝方式,也可自定義安裝,兩種方式都需勾上下方的Add Python 3.6 to PATH,這里我們選自定義安裝Customize installation

這里我們按默認(rèn)全選即可,Next

勾上第一個(gè)選項(xiàng),選擇安裝路徑后(注意安裝路徑不要包含中文,否則后面安裝工具可能會(huì)報(bào)錯(cuò)),點(diǎn)擊install就開始安裝了

等待安裝...

安裝完成,點(diǎn)擊close,python安裝完畢~ 前面已勾選了add path,所以無需設(shè)置任何系統(tǒng)變量,即可使用。
安裝后點(diǎn)擊開始菜單,在菜單最上面能找到IDLE

IDLE是python自帶的shell,點(diǎn)擊打開,即可開始編寫python腳本了~~

二、安裝selenium
上面python已安裝完畢,接下來安裝selenium。
安裝selenium之前需安裝些必要工具
1. 安裝setuptools
下載地址:https://pypi.python.org/pypi/setuptools

在頁面找到zip安裝包,下載后解壓。在命令行(運(yùn)行->cmd)進(jìn)入解壓目錄
執(zhí)行 python setup.py install 即可安裝,注意解壓路徑不要包含中文,否則安裝會(huì)報(bào)錯(cuò)。
2.安裝pip
下載地址:https://pypi.python.org/pypi/pip

在頁面找到pip-9.x.tar.gz,下載后解壓。同樣在命令行進(jìn)入解壓目錄,執(zhí)行 python setup.py install 即可自動(dòng)安裝。
3.安裝selenium
上面2個(gè)工具安裝好后,安裝selenium只需在命令行進(jìn)入python安裝路徑Script目錄下,執(zhí)行 pip install -U selenium 即可自動(dòng)安裝。
完成安裝后在IDLE輸入 from selenium import webdriver ,如果沒報(bào)錯(cuò)即代表安裝成功。
三 注意事項(xiàng)
1. selenium3.0需要獨(dú)立安裝Firefox驅(qū)動(dòng),不再自帶驅(qū)動(dòng),下載地址: https://github.com/mozilla/geckodriver/releases 下載對應(yīng)版本,解壓放在python安裝路徑下即可;
2. geckodriver驅(qū)動(dòng)要求Friefox瀏覽器必須48版本以上,如果不是,更新Firefox;
3. 如果用Java開發(fā),需注意3.0必須用JDK1.8版本才行;
4. Chromedriver下載:https://sites.google.com/a/chromium.org/chromedriver/downloads 同樣也是下載后放在python安裝路徑下即可。
四 第一個(gè)自動(dòng)化腳本
完成上面所有準(zhǔn)備工作,就可以開始第一個(gè)自動(dòng)化腳本的編寫啦~
打開IDLE,通過快捷鍵ctrl+n打開一個(gè)新窗口,在新窗口輸入以下代碼:
# coding = utf-8
from selenium import webdriver
browser = webdriver.Firefox()
browser.get("http://www.baidu.com")
browser.find_element_by_id("kw").send_keys("selenium")
browser.find_element_by_id("su").click()
browser.quit()
保存為test1.py,通過快捷鍵F5運(yùn)行腳本,可看到腳本啟動(dòng)Firefox瀏覽器進(jìn)入百度頁,輸入“selenium” 點(diǎn)擊搜索按鈕,最后關(guān)閉瀏覽器的過程。第一個(gè)腳本即完成了~
代碼解析:
# coding = utf-8
為了防止亂碼問題,以及在程序中添加中文注釋,把編碼統(tǒng)一成 UTF-8;
from selenium import webdriver
導(dǎo)入selenium的webdriver包,導(dǎo)入webdriver包后才能使用 webdriver API 進(jìn)行自動(dòng)化腳本開發(fā);
browser = webdriver.Firefox()
將控制的 webdriver 的 Firefox 賦值給 browser;獲得了瀏覽器對象才可以啟動(dòng)瀏覽器;
browser.get("http://www.baidu.com")
獲得瀏覽器對象后,通過 get()方法,向?yàn)g覽器發(fā)送網(wǎng)址;
browser.find_element_by_id("kw").send_keys("selenium")
通過 id=kw 定位到百度的輸入框,并通過鍵盤方法send_keys()向輸入框里輸入selenium ;
browser.find_element_by_id("su").click()
通過 id=su 定位到搜索按鈕,并向按鈕發(fā)送單擊事件(click()) ;
browser.quit()
退出并關(guān)閉窗口的每一個(gè)相關(guān)的驅(qū)動(dòng)程序。
到此這篇關(guān)于使用Python+selenium實(shí)現(xiàn)第一個(gè)自動(dòng)化測試腳本的文章就介紹到這了,更多相關(guān)Python selenium 自動(dòng)化測試內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- python3+selenium自動(dòng)化測試框架詳解
- selenium+python自動(dòng)化測試之使用webdriver操作瀏覽器的方法
- selenium python 實(shí)現(xiàn)基本自動(dòng)化測試的示例代碼
- python selenium自動(dòng)化測試框架搭建的方法步驟
- selenium+python自動(dòng)化測試之頁面元素定位
- selenium+python自動(dòng)化測試之環(huán)境搭建
- python3 selenium自動(dòng)化測試 強(qiáng)大的CSS定位方法
- python+django+selenium搭建簡易自動(dòng)化測試
- selenium自動(dòng)化測試簡單準(zhǔn)備
相關(guān)文章
python自動(dòng)查詢12306余票并發(fā)送郵箱提醒腳本
這篇文章主要為大家詳細(xì)介紹了Python自動(dòng)查詢12306余票并發(fā)送郵箱提醒腳本,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
keras slice layer 層實(shí)現(xiàn)方式
這篇文章主要介紹了keras slice layer 層實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
Python3 實(shí)現(xiàn)爬取網(wǎng)站下所有URL方式
今天小編就為大家分享一篇Python3 實(shí)現(xiàn)爬取網(wǎng)站下所有URL方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01
django 數(shù)據(jù)庫返回queryset實(shí)現(xiàn)封裝為字典
這篇文章主要介紹了django 數(shù)據(jù)庫返回queryset實(shí)現(xiàn)封裝為字典,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05
解決Tkinter中button按鈕未按卻主動(dòng)執(zhí)行command函數(shù)的問題
這篇文章主要介紹了解決Tkinter中button按鈕未按卻主動(dòng)執(zhí)行command函數(shù)的問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05

