selenium 是一個web的自動化測試工具,不少學(xué)習(xí)功能自動化的同學(xué)開始首選selenium ,相因?yàn)樗啾萉TP有諸多有點(diǎn): * 免費(fèi),也不用再為破解QTP而大傷腦筋 * 小巧,對于不同的語言它只是一個包而已,而QTP需要下載安裝1個多G 的程序。 * 這也是最重要的一點(diǎn),不管你以前更熟悉C、 java、ruby、python、或都是C# ,你都可以通過selenium完成自動化測試,而QTP只支持VBS * 支持多平臺:windows、linux、MAC ,支持多瀏覽器:ie、ff、safari、opera、chrome * 支持分布式測試用例的執(zhí)行,可以把測試用例分布到不同的測試機(jī)器的執(zhí)行,相當(dāng)于分發(fā)機(jī)的功能。
關(guān)于selenium的基礎(chǔ)知識與java平臺的結(jié)合,我之前寫過一個《菜鳥學(xué)習(xí)自動化測試》系列,最近學(xué)python,所以想嘗試一下selenium的在python平臺如何搭建;還好這方法的文章很容易,在此將搭建步驟整理分享。
搭建平臺windows 準(zhǔn)備工具如下: ------------------------------------------------------------- 下載python 下載setuptools 【python的基礎(chǔ)包工具】 # http://pypi./pypi/setuptools https://pypi./packages/2.7/s/setuptools/ 下載pip 【python的安裝包管理工具】 ------------------------------------------------------------- 因?yàn)榘姹径荚诟?,pyhton選擇2.7.xx ,setuptools 選擇你平臺對應(yīng)的版本,pip 不要擔(dān)心tar.gz 在windows下一樣可用。
window安裝步驟:
1、python的安裝 ,這個不解釋,exe文件運(yùn)行安裝即可,既然你選擇python,相信你是熟悉python的,我安裝目錄C:\Python27 2、setuptools 的安裝也非常簡單,同樣是exe文件,默認(rèn)會找到python的安裝路徑,將安裝到C:\Python27\Lib\site-packages 目錄下。 通過上面提供的setuptools的連接,拖動頁面到底部找到,setuptools-1.3.2.tar.gz 文件(版本隨著時間版本會有更新),對文件進(jìn)行解壓,找到ez_install.py文件,進(jìn)入windows命令提示下執(zhí)行ez_install.py: C:\setuptools-1.3>python ez_install.py 沒有報錯表示安裝成功。
(如果提示python不是內(nèi)部或外部命令!別急,去配置一下環(huán)境變量吧)
3、安裝pip ,我默認(rèn)解壓在了C:\pip-1.3.1 目錄下 4、打開命令提示符(開始---cmd回車)進(jìn)入C:\pip-1.3.1目錄下輸入: C:\pip-1.3.1 > python setup.py install 5、再切換到C:\Python27\Scripts 目錄下輸入: C:\Python27\Scripts > easy_install pip 6、安裝selenium,(下載地址: https://pypi./pypi/selenium ) 如果是聯(lián)網(wǎng)狀態(tài)的話,可以直接在C:\Python27\Scripts 下輸入命令安裝: C:\Python27\Scripts > pip install -U selenium 如果沒聯(lián)網(wǎng)(這個一般不太可能),下載selenium 2.33.0 (目前的最新版本) 并解壓把整個目錄放到C:\Python27\Lib\site-packages 目錄下。
=======如果你不分析wedriver 原理的話,下面兩步可以省略============= 7、下載并安裝(http://www./zh_CN/download/chrome.jsp?locale=zh_CN)什么?你沒整過java,參考其它文檔吧!這不難。 8、 下載selenium 的服務(wù)端(https://code.google.com/p/selenium/)在頁面的左側(cè)列表中找到 selenium-server-standalone-XXX.jar 對!就是這個東西,把它下載下來并解壓; 在selenium-server-standalone-xxx.jar目錄下使用命令 java -jar selenium-server-standalone-xxx.jar啟動(如果打不開,查看是否端口被占 用:netstat -aon|findstr 4444)。 ===============================================
ubuntu 下安裝方式:
1、安裝:setuptools root@fnngj-H24X:~# apt-get install python-setuptools 2、安裝pip root@fnngj-H24X:/home/fnngj/python# tar -zxvf pip-1.4.1.tar.gz root@fnngj-H24X:/home/fnngj/python# cd pip-1.4.1/ root@fnngj-H24X:/home/fnngj/python# python setup.py install 3、安裝selenium root@fnngj-H24X:/home/fnngj/python/pip-1.4.1# pip install -U selenium
恭喜~! 你前期工作已經(jīng)做了,上面的步驟確實(shí)有些繁瑣,但是并不難,不過我們已經(jīng)完成成了,下面體驗(yàn)一下成果吧! 拿python網(wǎng)站上的例子:
from selenium import webdriver
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.common.keys import Keys
import time
browser = webdriver.Firefox() # Get local session of firefox
browser.get("http://www.yahoo.com") # Load page
assert "Yahoo!" in browser.title
elem = browser.find_element_by_name("p") # Find the query box
elem.send_keys("seleniumhq" + Keys.RETURN)
time.sleep(0.2) # Let the page load, will be added to the API
try:
browser.find_element_by_xpath("//a[contains(@href,'http://')]")
except NoSuchElementException:
assert 0, "can't find seleniumhq"
browser.close()
(運(yùn)行過程中如果出現(xiàn)錯誤: WebDriverException: Message: u'Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mo de must be set to the same value (enabled or disabled) for all zones.' 更改IE的internet選項(xiàng)->安全,將Internet/本地Internet/受信任的站定/受限制的站點(diǎn)中的啟用保護(hù)模式全部去 掉勾,或者全部勾上。)
----------------------------------------- selenium + python的一份不錯文檔 http://selenium./git/docs/api/py/index.html
===========================如果想通過其它瀏覽器(IE Chrome)運(yùn)行腳本=================================
安裝Chrome driver chrome driver的下載地址在這里。 1. 下載解壓,你會得到一個chromedriver.exe文件(我點(diǎn)開,運(yùn)行提示started no prot 9515 ,這是干嘛的?端口9515被占了?中間折騰了半天),后來才知道需要把這家伙放到chrome的安裝目錄下...\Google\Chrome\Application\ ,然后設(shè)置path環(huán)境變量,把chrome的安裝目錄(我的:C:\Program Files\Google\Chrome\Application),然后再調(diào)用運(yùn)行: # coding = utf-8 from selenium import webdriver driver = webdriver.Chrome() driver.get('http://radar.') print driver.title driver.quit() 又報了個錯: Chrome version must be >= 27.0.1453.0\n (Driver info: chromedriver=2.0,platform=Windows NT 5.1 SP3 x86) 說我chrome的版本沒有大于27.0.1453.0 ,這個好辦,更新到最新版本即可。
安裝IE driver 在新版本的webdriver中,只有安裝了ie driver使用ie進(jìn)行測試工作。 ie driver的下載地址在這里,記得根據(jù)自己機(jī)器的操作系統(tǒng)版本來下載相應(yīng)的driver。 暫時還沒嘗試,應(yīng)該和chrome的安裝方式類似。
記得配置IE的保護(hù)模式 如果要使用webdriver啟動IE的話,那么就需要配置IE的保護(hù)模式了。 把IE里的保護(hù)模式都選上或都勾掉就可以了。
乙醇的安裝方式: |
|