自動化測試框架的安裝及使用Python + Nosetests + Webdriver

1 Python + Nosetests安裝及配置

1.1 Python安裝,以Windows為例
獲取python-2.7.6.msi或者python-2.7.5.msi雙擊msi文件安裝即可
1.2 Python配置
右單擊我的電腦(或計算機)->屬性->高級->環境變量,在系統變量中找到PATH變量并編輯,添加Python安裝路徑到PATH變量(如:C:\Python27;)
打開cmd窗口,運行python,顯示如下圖:

1.3 Python插件安裝

1.3.1 setuptools安裝
目的:為安裝其他插件做準備
獲取setuptools-3.3.zip,拷貝setuptools zip包到C盤根目錄解壓,然后打開cmd窗口,切換路徑至setuptools-3.3,運行python setup.py install,如下圖所示

安裝完成后,可以在C:\Python27\Lib\site-packages下面找到setuptools文件夾及相關目錄,和C:\Python27下面多了一個Scripts目錄,并能在C:\Python27\Scripts下面看到ez_install.exe
1.3.2 pip安裝(可選安裝,如需在線安裝selenium,則需要安裝)
目的:可以使用該命令在線安裝插件
獲取pip-1.0.2.zip,拷貝pip-1.0.2
zip包到C盤根目錄解壓,然后打開cmd窗口,切換路徑至pip-1.0.2,運行python setup.py install
安裝完成后,可以在C:\Python27\Scripts下面找到pip.exe,和能在C :\Python27\Lib\site-packages下面找到pip-1.0.2-py2.7.egg文件夾
安裝成功后,可以刪除解壓后的目錄
1.3.3 Nosetests安裝
目的:該插件屬于我們的框架,為運行用例做準備
獲取nosetests文件,解壓文件,將目錄拷貝到C:\下面,打開cmd窗口,切換目錄到C:\nose-1.3.1,運行python setup.py install
安裝完成后,可以在C:\Python27\Scripts下面看到nosetests.exe及相關文件
為了確保nosetests對其他目錄也有效,參看1.2添加C:\Python27\Scripts;到環境變量PATH里面。
打開cmd窗口,輸入nosetests,回車,沒有錯誤顯示表明安裝成功
1.3.4 nose-testconfig安裝
目的:該插件用于框架里面的config文件導入,比如from testconfig import config
獲取nose-testconfig-0.9.tar.gz文件,解壓文件,將目錄拷貝到C:\下面,打開cmd窗口,切換目錄到C:
nose-testconfig-0.9,運行python setup.py install安裝成功,如下圖所示

1.3.5 Unittest安裝
目的:該插件其實Python有自帶,這里是安裝最新版本,為安裝nose-selenium插件做準備
獲取unittest2-0.5.1.zip文件,解壓文件,將目錄拷貝到C:\下面,打開cmd窗口,切換目錄到C:\ unittest2-0.5.1,運行python
setup.py install安裝成功,如下圖所示

1.3.6 requests安裝
目的:為安裝nose-selenium插件做準備
獲取requests-2.2.1.tar.gz文件,解壓文件,將目錄拷貝到C:\下面,打開cmd窗口,切換目錄到C:\ requests-2.2.1,運行python
setup.py install安裝成功,如下圖所示

1.3.7 nose-selenium-0.07安裝
目的:該插件用于nose框架和selenium結合使用
獲取nose-selenium-0.07.tar.gz文件,解壓文件,將目錄拷貝到C:\下面,打開cmd窗口,切換目錄到C:\ nose-selenium-0.07,運行python setup.py
install安裝
1.3.8其他插件安裝
如需安裝其他插件,請按上述方法操作
Pydoc插件:用于連接SQL
Server數據庫
Lxml插件(直接安裝):用于解析XML文件

2 Webdriver安裝

2.1 Selenium Webdriver安裝
目的:WebDriver用于啟動瀏覽器,模擬用戶在瀏覽器上做操作
獲取selenium-2.40.0.zip文件,解壓到C:\,打開cmd窗口,切換目錄到C:
selenium-2.40.0,運行python setup.py install,安裝成功后,輸入python命令換行,進入python編輯模式,輸入from
selenium import webdriver,不報錯,表明已經安裝成功
2.2 Chrome Webdriver安裝
目的:用于Webdriver能夠啟動Chrome瀏覽器
獲取chromedriver.zip文件,解壓文件,將chromedriver.exe拷貝到C:\Python27目錄下,并添加C:\Users\Administrator\AppData\Local\Google\Chrome\Application\(chrome安裝路徑,這里是win7下的安裝路徑)到環境變量path
2.3 IE Webdriver安裝
目的:用于Webdriver能夠啟動IE瀏覽器
獲取IEDriverServer_x64_2.33.0.zip文件,解壓文件,將IEDriverServer.exe拷貝到C:\Python27目錄下

3 Eclipse安裝

前置條件:系統已經安裝JDK
獲取eclipse.zip文件,解壓文件,比如:D:\eclipse,直接打開eclipse.exe即可運行
如果你的eclipse里面沒有安裝pyDev,請按以下步驟安裝:
1)在Help菜單中,選擇Install New Software···
2)選擇Add按鈕,Name:PyDev(這個隨便起),Location:http://pydev.org/updates(PyDev的更新地址),點擊OK

3)選擇PyDev下的PyDev for Eclipse,別的都不要選,否則依賴檢查那關過不去
4)不要勾選“Contact all update sites during install to find required software”,點擊Next安裝即可
5)重啟Eclipse,會看到pyDev插件,系統會自動為其配置,可以創建PyDev project表示已經安裝成功

Eclipse - SVN插件安裝
1)在Help菜單中,選擇Install New Software···
2)選擇Add按鈕,Name:SVN,Location:http://subclipse.tigris.org/update_1.8.x,點擊OK
3)勾選Subclipse和SVNKit
4)不要勾選“Contact all
update sites during install to find required software”,點擊Next安裝即可,重啟Eclipse即可
5)安裝完成后即可從SVN中直接導入自動化項目工程
6)點擊Next,創建新的導入文件路徑http://192.168.25.69:8080/svn/hjqa/, 選擇/03測試設計/98自動化測試/automation,點擊Next,導入即可。
這樣設置后可以方便更新上傳自動化測試代碼

4框架使用說明

4.1代碼目錄結構
4.2使用說明
-conf-> env:存放各個測試環境的信息,比如:
?prodconfig.py:存放prod環境的用戶登錄信息,主站點以及各產品線站點的URL,比如:config['class'] = 'http://class.hujiang.com/'
?yzconfig.py:存放驗證環境的用戶登錄信息,主站點以及各產品線站點的URL
比如:config['class'] = 'http://yz.class.hujiang.com/'
?qa2config.py:存放qa2環境的用戶登錄信息,主站點以及各產品線站點的URL
比如:config['class'] = 'http://class2.hujiang.com/'
?qa3config.py:存放qa3環境的用戶登錄信息,主站點以及各產品線站點的URL
比如:config['class'] = 'http://class3.hujiang.com/'

-conf -> run:可以在cfg文件里面指定要運行的用例和運行環境的配置文件

如果需要指定運行某一個特定的用例,只需更新tests=[用例相對路徑],比如:tests=testcase/testClass/testClassCommonStudyCard.py
如果需要在線上真實環境運行,設置tc-file=conf/env/prodconfig.py,如果要在驗證環境上運行,設置為tc-file=conf/env/yzconfig.py即可
-util:存放與業務邏輯無關的公共方法,比如涉及文件讀寫操作,瀏覽器啟動,判斷一個元素、文件、目錄是否存在
-common:存放與基礎業務邏輯相關的方法或類,即涉及各個產品之間的業務邏輯公共方法,比如:登錄信息錄入,注冊信息錄入,提交訂單,取消訂單等
-business:存放與各產品業務相關的邏輯方法,比如:網校課程購買,團購商品購買,聽寫酷聽寫等
-testcase:存放測試用例,文件命名,類名和方法名以test開頭或結尾,比如:testClassCommonStudyCard.py,類名testClassCommonStudyCard

每個用例都至少包含一個setUp()和teardown()。setUp()為準備測試數據,啟動測試環境,如啟動瀏覽器,確保運行環境干凈等操作。teardown()清理現場,當測試運行結束,清除歷史,恢復運行前的現場。
-testdata:存放測試準備數據
-testresult:當特殊測試用例需要輸出特別的測試報告,保存記錄
-bat批處理文件:執行用例文件,該文件封裝了用例執行命令,用戶只需雙擊該文件即可運行相應的測試用例。如果用戶不使用bat批處理文件,也可以直接打開CMD窗口,運行命令:nosetests -s -v -c [指定配置文件],如:nosetests -s -v -c conf\run\class2.cfg
-nosetest.xml:保存測試運行結果

Testsuite結點屬性解釋:
-tests:運行的用例總量
-failures:運行失敗的用例數量
-errors:運行用例出現error,表明腳本需要更新,有error沒有被抓住
testcase結點中的time:單個用例的運行時間

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,923評論 6 535
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,740評論 3 420
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,856評論 0 380
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,175評論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,931評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,321評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,383評論 3 443
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,533評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,082評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,891評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,067評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,618評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,319評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,732評論 0 27
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,987評論 1 289
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,794評論 3 394
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,076評論 2 375

推薦閱讀更多精彩內容