1 Python + Nosetests安裝及配置
1.1 Python安裝大磺,以Windows為例
獲取python-2.7.6.msi或者python-2.7.5.msi雙擊msi文件安裝即可
1.2 Python配置
右單擊我的電腦(或計(jì)算機(jī))->屬性->高級(jí)->環(huán)境變量,在系統(tǒng)變量中找到PATH變量并編輯,添加Python安裝路徑到PATH變量(如:C:\Python27;)
打開(kāi)cmd窗口贤徒,運(yùn)行python,顯示如下圖:
1.3 Python插件安裝
1.3.1 setuptools安裝
目的:為安裝其他插件做準(zhǔn)備
獲取setuptools-3.3.zip,拷貝setuptools zip包到C盤根目錄解壓脖咐,然后打開(kāi)cmd窗口,切換路徑至setuptools-3.3汇歹,運(yùn)行python setup.py install屁擅,如下圖所示
安裝完成后,可以在C:\Python27\Lib\site-packages下面找到setuptools文件夾及相關(guān)目錄产弹,和C:\Python27下面多了一個(gè)Scripts目錄煤蹭,并能在C:\Python27\Scripts下面看到ez_install.exe
1.3.2 pip安裝(可選安裝,如需在線安裝selenium取视,則需要安裝)
目的:可以使用該命令在線安裝插件
獲取pip-1.0.2.zip硝皂,拷貝pip-1.0.2
zip包到C盤根目錄解壓,然后打開(kāi)cmd窗口作谭,切換路徑至pip-1.0.2稽物,運(yùn)行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安裝
目的:該插件屬于我們的框架,為運(yùn)行用例做準(zhǔn)備
獲取nosetests文件锐秦,解壓文件咪奖,將目錄拷貝到C:\下面,打開(kāi)cmd窗口酱床,切換目錄到C:\nose-1.3.1羊赵,運(yùn)行python setup.py install
安裝完成后,可以在C:\Python27\Scripts下面看到nosetests.exe及相關(guān)文件
為了確保nosetests對(duì)其他目錄也有效扇谣,參看1.2添加C:\Python27\Scripts;到環(huán)境變量PATH里面昧捷。
打開(kāi)cmd窗口,輸入nosetests罐寨,回車靡挥,沒(méi)有錯(cuò)誤顯示表明安裝成功
1.3.4 nose-testconfig安裝
目的:該插件用于框架里面的config文件導(dǎo)入,比如from testconfig import config
獲取nose-testconfig-0.9.tar.gz文件鸯绿,解壓文件跋破,將目錄拷貝到C:\下面簸淀,打開(kāi)cmd窗口,切換目錄到C:
nose-testconfig-0.9毒返,運(yùn)行python setup.py install安裝成功啃擦,如下圖所示
1.3.5 Unittest安裝
目的:該插件其實(shí)Python有自帶,這里是安裝最新版本饿悬,為安裝nose-selenium插件做準(zhǔn)備
獲取unittest2-0.5.1.zip文件令蛉,解壓文件,將目錄拷貝到C:\下面狡恬,打開(kāi)cmd窗口珠叔,切換目錄到C:\ unittest2-0.5.1,運(yùn)行python
setup.py install安裝成功弟劲,如下圖所示
1.3.6 requests安裝
目的:為安裝nose-selenium插件做準(zhǔn)備
獲取requests-2.2.1.tar.gz文件祷安,解壓文件,將目錄拷貝到C:\下面兔乞,打開(kāi)cmd窗口汇鞭,切換目錄到C:\ requests-2.2.1,運(yùn)行python
setup.py install安裝成功庸追,如下圖所示
1.3.7 nose-selenium-0.07安裝
目的:該插件用于nose框架和selenium結(jié)合使用
獲取nose-selenium-0.07.tar.gz文件霍骄,解壓文件,將目錄拷貝到C:\下面淡溯,打開(kāi)cmd窗口读整,切換目錄到C:\ nose-selenium-0.07,運(yùn)行python setup.py
install安裝
1.3.8其他插件安裝
如需安裝其他插件咱娶,請(qǐng)按上述方法操作
Pydoc插件:用于連接SQL
Server數(shù)據(jù)庫(kù)
Lxml插件(直接安裝):用于解析XML文件
2 Webdriver安裝
2.1 Selenium Webdriver安裝
目的:WebDriver用于啟動(dòng)瀏覽器米间,模擬用戶在瀏覽器上做操作
獲取selenium-2.40.0.zip文件,解壓到C:\膘侮,打開(kāi)cmd窗口屈糊,切換目錄到C:
selenium-2.40.0,運(yùn)行python setup.py install琼了,安裝成功后逻锐,輸入python命令換行,進(jìn)入python編輯模式表伦,輸入from
selenium import webdriver谦去,不報(bào)錯(cuò)慷丽,表明已經(jīng)安裝成功
2.2 Chrome Webdriver安裝
目的:用于Webdriver能夠啟動(dòng)Chrome瀏覽器
獲取chromedriver.zip文件蹦哼,解壓文件,將chromedriver.exe拷貝到C:\Python27目錄下要糊,并添加C:\Users\Administrator\AppData\Local\Google\Chrome\Application\(chrome安裝路徑纲熏,這里是win7下的安裝路徑)到環(huán)境變量path
2.3 IE Webdriver安裝
目的:用于Webdriver能夠啟動(dòng)IE瀏覽器
獲取IEDriverServer_x64_2.33.0.zip文件,解壓文件,將IEDriverServer.exe拷貝到C:\Python27目錄下
3 Eclipse安裝
前置條件:系統(tǒng)已經(jīng)安裝JDK
獲取eclipse.zip文件局劲,解壓文件勺拣,比如:D:\eclipse,直接打開(kāi)eclipse.exe即可運(yùn)行
如果你的eclipse里面沒(méi)有安裝pyDev鱼填,請(qǐng)按以下步驟安裝:
1)在Help菜單中药有,選擇Install New Software···
2)選擇Add按鈕,Name:PyDev(這個(gè)隨便起)苹丸,Location:http://pydev.org/updates(PyDev的更新地址)愤惰,點(diǎn)擊OK
3)選擇PyDev下的PyDev for Eclipse,別的都不要選赘理,否則依賴檢查那關(guān)過(guò)不去
4)不要勾選“Contact all update sites during install to find required software”宦言,點(diǎn)擊Next安裝即可
5)重啟Eclipse,會(huì)看到pyDev插件商模,系統(tǒng)會(huì)自動(dòng)為其配置奠旺,可以創(chuàng)建PyDev project表示已經(jīng)安裝成功
Eclipse - SVN插件安裝
1)在Help菜單中,選擇Install New Software···
2)選擇Add按鈕施流,Name:SVN响疚,Location:http://subclipse.tigris.org/update_1.8.x,點(diǎn)擊OK
3)勾選Subclipse和SVNKit
4)不要勾選“Contact all
update sites during install to find required software”瞪醋,點(diǎn)擊Next安裝即可稽寒,重啟Eclipse即可
5)安裝完成后即可從SVN中直接導(dǎo)入自動(dòng)化項(xiàng)目工程
6)點(diǎn)擊Next,創(chuàng)建新的導(dǎo)入文件路徑http://192.168.25.69:8080/svn/hjqa/趟章, 選擇/03測(cè)試設(shè)計(jì)/98自動(dòng)化測(cè)試/automation杏糙,點(diǎn)擊Next,導(dǎo)入即可蚓土。
這樣設(shè)置后可以方便更新上傳自動(dòng)化測(cè)試代碼
4框架使用說(shuō)明
4.1代碼目錄結(jié)構(gòu)
4.2使用說(shuō)明
-conf-> env:存放各個(gè)測(cè)試環(huán)境的信息宏侍,比如:
?prodconfig.py:存放prod環(huán)境的用戶登錄信息,主站點(diǎn)以及各產(chǎn)品線站點(diǎn)的URL蜀漆,比如:config['class'] = 'http://class.hujiang.com/'
?yzconfig.py:存放驗(yàn)證環(huán)境的用戶登錄信息谅河,主站點(diǎn)以及各產(chǎn)品線站點(diǎn)的URL
比如:config['class'] = 'http://yz.class.hujiang.com/'
?qa2config.py:存放qa2環(huán)境的用戶登錄信息,主站點(diǎn)以及各產(chǎn)品線站點(diǎn)的URL
比如:config['class'] = 'http://class2.hujiang.com/'
?qa3config.py:存放qa3環(huán)境的用戶登錄信息确丢,主站點(diǎn)以及各產(chǎn)品線站點(diǎn)的URL
比如:config['class'] = 'http://class3.hujiang.com/'
-conf -> run:可以在cfg文件里面指定要運(yùn)行的用例和運(yùn)行環(huán)境的配置文件
如果需要指定運(yùn)行某一個(gè)特定的用例绷耍,只需更新tests=[用例相對(duì)路徑],比如:tests=testcase/testClass/testClassCommonStudyCard.py
如果需要在線上真實(shí)環(huán)境運(yùn)行鲜侥,設(shè)置tc-file=conf/env/prodconfig.py褂始,如果要在驗(yàn)證環(huán)境上運(yùn)行,設(shè)置為tc-file=conf/env/yzconfig.py即可
-util:存放與業(yè)務(wù)邏輯無(wú)關(guān)的公共方法描函,比如涉及文件讀寫操作崎苗,瀏覽器啟動(dòng)狐粱,判斷一個(gè)元素、文件胆数、目錄是否存在
-common:存放與基礎(chǔ)業(yè)務(wù)邏輯相關(guān)的方法或類肌蜻,即涉及各個(gè)產(chǎn)品之間的業(yè)務(wù)邏輯公共方法,比如:登錄信息錄入必尼,注冊(cè)信息錄入蒋搜,提交訂單,取消訂單等
-business:存放與各產(chǎn)品業(yè)務(wù)相關(guān)的邏輯方法判莉,比如:網(wǎng)校課程購(gòu)買齿诞,團(tuán)購(gòu)商品購(gòu)買,聽(tīng)寫酷聽(tīng)寫等
-testcase:存放測(cè)試用例骂租,文件命名祷杈,類名和方法名以test開(kāi)頭或結(jié)尾,比如:testClassCommonStudyCard.py渗饮,類名testClassCommonStudyCard
每個(gè)用例都至少包含一個(gè)setUp()和teardown()但汞。setUp()為準(zhǔn)備測(cè)試數(shù)據(jù),啟動(dòng)測(cè)試環(huán)境互站,如啟動(dòng)瀏覽器私蕾,確保運(yùn)行環(huán)境干凈等操作。teardown()清理現(xiàn)場(chǎng)胡桃,當(dāng)測(cè)試運(yùn)行結(jié)束踩叭,清除歷史,恢復(fù)運(yùn)行前的現(xiàn)場(chǎng)翠胰。
-testdata:存放測(cè)試準(zhǔn)備數(shù)據(jù)
-testresult:當(dāng)特殊測(cè)試用例需要輸出特別的測(cè)試報(bào)告容贝,保存記錄
-bat批處理文件:執(zhí)行用例文件,該文件封裝了用例執(zhí)行命令之景,用戶只需雙擊該文件即可運(yùn)行相應(yīng)的測(cè)試用例斤富。如果用戶不使用bat批處理文件,也可以直接打開(kāi)CMD窗口锻狗,運(yùn)行命令:nosetests -s -v -c [指定配置文件]满力,如:nosetests -s -v -c conf\run\class2.cfg
-nosetest.xml:保存測(cè)試運(yùn)行結(jié)果
Testsuite結(jié)點(diǎn)屬性解釋:
-tests:運(yùn)行的用例總量
-failures:運(yùn)行失敗的用例數(shù)量
-errors:運(yùn)行用例出現(xiàn)error,表明腳本需要更新轻纪,有error沒(méi)有被抓住
testcase結(jié)點(diǎn)中的time:?jiǎn)蝹€(gè)用例的運(yùn)行時(shí)間