自動(dòng)化測(cè)試框架的安裝及使用Python + Nosetests + Webdriver

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í)間

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末油额,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子刻帚,更是在濱河造成了極大的恐慌潦嘶,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,331評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件我擂,死亡現(xiàn)場(chǎng)離奇詭異衬以,居然都是意外死亡缓艳,警方通過(guò)查閱死者的電腦和手機(jī)校摩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,372評(píng)論 3 398
  • 文/潘曉璐 我一進(jìn)店門看峻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人衙吩,你說(shuō)我怎么就攤上這事互妓。” “怎么了坤塞?”我有些...
    開(kāi)封第一講書人閱讀 167,755評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵冯勉,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我摹芙,道長(zhǎng)灼狰,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書人閱讀 59,528評(píng)論 1 296
  • 正文 為了忘掉前任浮禾,我火速辦了婚禮交胚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘盈电。我一直安慰自己蝴簇,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,526評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布匆帚。 她就那樣靜靜地躺著熬词,像睡著了一般。 火紅的嫁衣襯著肌膚如雪吸重。 梳的紋絲不亂的頭發(fā)上互拾,一...
    開(kāi)封第一講書人閱讀 52,166評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音嚎幸,去河邊找鬼摩幔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛鞭铆,可吹牛的內(nèi)容都是我干的或衡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,768評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼车遂,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼封断!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,664評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤吩坝,失蹤者是張志新(化名)和其女友劉穎歌憨,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體柄瑰,經(jīng)...
    沈念sama閱讀 46,205評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡闸氮,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,290評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了教沾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蒲跨。...
    茶點(diǎn)故事閱讀 40,435評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖授翻,靈堂內(nèi)的尸體忽然破棺而出或悲,到底是詐尸還是另有隱情,我是刑警寧澤堪唐,帶...
    沈念sama閱讀 36,126評(píng)論 5 349
  • 正文 年R本政府宣布巡语,位于F島的核電站,受9級(jí)特大地震影響淮菠,放射性物質(zhì)發(fā)生泄漏男公。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,804評(píng)論 3 333
  • 文/蒙蒙 一合陵、第九天 我趴在偏房一處隱蔽的房頂上張望枢赔。 院中可真熱鬧,春花似錦曙寡、人聲如沸糠爬。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,276評(píng)論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)执隧。三九已至,卻和暖如春户侥,著一層夾襖步出監(jiān)牢的瞬間镀琉,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,393評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工蕊唐, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留屋摔,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,818評(píng)論 3 376
  • 正文 我出身青樓替梨,卻偏偏與公主長(zhǎng)得像钓试,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子副瀑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,442評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容