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:單個用例的運行時間