python+selenium 自動化測試環境搭建

selenium 是一個web的自動化測試工具,不少學習功能自動化的同學開始首選selenium ,相因爲它相比QTP有諸多有點:

*  免費,也不用再爲破解QTP而大傷腦筋

*  小巧,對於不同的語言它只是一個包而已,而QTP需要下載安裝1個多G 的程序。

*  這也是最重要的一點,不管你以前更熟悉C、 java、ruby、python、或都是C# ,你都可以通過selenium完成自動化測試,而QTP只支持VBS 

*  支持多平臺:windows、linux、MAC ,支持多瀏覽器:ie、ff、safari、opera、chrome

*  支持分佈式測試用例的執行,可以把測試用例分佈到不同的測試機器的執行,相當於分發機的功能。

 

關於selenium的基礎知識與java平臺的結合,我之前寫過一個《菜鳥學習自動化測試》系列,最近學python,所以想嘗試一下selenium的在python平臺如何搭建;還好這方法的文章很容易,在此將搭建步驟整理分享。

 

搭建平臺windows 

準備工具如下:

-------------------------------------------------------------

下載python

https://www.python.org/

-------------------------------------------------------------

如果你是新學python,哪果你沒有要用的包是必須依賴於pyhton2.x 的,那麼請毫不猶豫的選擇python3.5吧!

 

window安裝步驟:

 

  1、下載python安裝。

  https://www.python.org/downloads/release/python-351/

 

根據自己的操作系統32/64 位,選擇相應的版本。

安裝過程我就沒必要描述,我的安裝目錄爲:C:\Python35

 

 2、進入cmd(windows命令提示符)下面輸入"python"命令。

(如果提示python不是內部或外部命令!別急,去配置一下環境變量吧)

修改我的電腦->屬性->高級->環境變量->系統變量中的PATH爲:

變量名:PATH

變量值:;C:\Python35;C:\Python35\Scripts; 

 

3、安裝selenium

3.1、通過pip 安裝

C:\Users\fnngj>python3 -m pip install selenium 

3.2、通過下載包安裝

或者直接下載selenium包:

https://pypi.python.org/pypi/selenium

解壓,cmd進入目錄:

C:\selenium\selenium2.53.5> python3 setup.py install

 

 

===============================================

 

 

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

 

恭喜~! 你前期工作已經做了,上面的步驟確實有些繁瑣,但是並不難,不過我們已經完成成了,下面體驗一下成果吧! 拿python網站上的例子:

 

複製代碼

from selenium import webdriverfrom selenium.common.exceptions import NoSuchElementExceptionfrom selenium.webdriver.common.keys import Keysimport time

browser = webdriver.Firefox() # Get local session of firefoxbrowser.get("http://www.yahoo.com") # Load pageassert "Yahoo!" in browser.title
elem = browser.find_element_by_name("p") # Find the query boxelem.send_keys("seleniumhq" + Keys.RETURN)
time.sleep(0.2) # Let the page load, will be added to the APItry:
    browser.find_element_by_xpath("//a[contains(@href,'http://seleniumhq.org')]")except NoSuchElementException:    assert 0, "can't find seleniumhq"browser.close()

複製代碼

 

(運行過程中如果出現錯誤: 

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選項->安全,將Internet/本地Internet/受信任的站定/受限制的站點中的啓用保護模式全部去 掉勾,或者全部勾上。)

 

-----------------------------------------

selenium + python的一份不錯文檔

http://selenium.googlecode.com/git/docs/api/py/index.html

 

===========================如果想通過其它瀏覽器(IE Chrome)運行腳本=================================

 

安裝Chrome driver

chrome driver的下載地址在這裏

  1. 下載解壓,你會得到一個chromedriver.exe文件(我點開,運行提示started no prot 9515 ,這是幹嘛的?端口9515被佔了?中間折騰了半天),後來才知道需要把這傢伙放到chrome的安裝目錄下...\Google\Chrome\Application\ ,然後設置path環境變量,把chrome的安裝目錄(我的:C:\Program Files\Google\Chrome\Application),然後再調用運行:

複製代碼

# coding = utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.get('http://radar.kuaibo.com')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進行測試工作。

ie driver的下載地址在這裏,記得根據自己機器的操作系統版本來下載相應的driver。

暫時還沒嘗試,應該和chrome的安裝方式類似。

 

記得配置IE的保護模式

如果要使用webdriver啓動IE的話,那麼就需要配置IE的保護模式了。

IE裏的保護模式都選上或都勾掉就可以了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章