robotframework-自動(dòng)化測(cè)試-實(shí)例11(Jenkins集成)

前情介紹:
自動(dòng)化測(cè)試除了需要編寫腳本來自動(dòng)化的模擬用戶的各種操作以外杜恰,自動(dòng)化測(cè)試還需要完成的一項(xiàng)是執(zhí)行時(shí)間自動(dòng)化運(yùn)行和測(cè)試結(jié)果自動(dòng)化生成。
RF其實(shí)已經(jīng)很好的幫我們完成了測(cè)試結(jié)果自動(dòng)化生成的工作电媳。
那我們只剩下一個(gè)腳本可以自動(dòng)化執(zhí)行的需求了症歇∧ㄖ瘢可用的方法很多所袁,比如:

  • 寫bat文件來自動(dòng)運(yùn)行robot腳本
  • 用python或者其它的語言寫腳本來定時(shí)運(yùn)行robot腳本
  • 使用其它的工具來定時(shí)運(yùn)行robot腳本
    本小節(jié)呢,我們就選用現(xiàn)在市場(chǎng)上最流行的CI工具Jenkins來完成這一目標(biāo)澈吨。

需求:
用Jenkins來自動(dòng)運(yùn)行Robot自動(dòng)化腳本

因?yàn)橹坝性贚inux(Centos)的環(huán)境下裝Git服務(wù)器把敢,這次也順便把Jenkins的服務(wù)器裝在了Linux的環(huán)境下。(安裝過程請(qǐng)大家自己先百度谅辣,Jenkins支持的環(huán)境其實(shí)很多修赞,有空再寫相關(guān)的文。下載官網(wǎng):http://mirrors.jenkins-ci.org/ 桑阶,找自己想下載的版本進(jìn)行安裝就行了)

設(shè)計(jì):
Master:Jenkins是安裝在Linux服務(wù)器上的柏副,作為Master;
Slave:Win7系統(tǒng)蚣录,上面同時(shí)安裝了Python2和Python3割择,存有之前練習(xí)的所有Python腳本。

Jenkins支持Master/Slave的機(jī)制萎河,也就是我們常說的主從模式荔泳,這樣有利于在多臺(tái)不同測(cè)試環(huán)境上面運(yùn)行測(cè)試腳本。
Jenkins還支持多個(gè)版本控制工具虐杯,比如Git玛歌,SVN等,此次因?yàn)榇罱ōh(huán)境比較復(fù)雜擎椰,暫時(shí)不使用版本控制工具支子。(這些都可以通過安裝插件的方式來實(shí)現(xiàn))

實(shí)現(xiàn):
1 安裝好Jenkins后在Win7的瀏覽器中輸入服務(wù)器地址 http://服務(wù)器ip:端口號(hào)

jenkins.png

2 登錄后新建一個(gè)節(jié)點(diǎn) http://服務(wù)器ip:8080/computer,選擇新建一個(gè)節(jié)點(diǎn)SlaveA

SlaveA.png

注意:我們啟動(dòng)Jenkins服務(wù)的這臺(tái)機(jī)器在Jenkins里叫做master,而其他的連到master上的機(jī)器(物理機(jī)达舒、虛擬機(jī)都可以)都是slave值朋,也叫節(jié)點(diǎn)叹侄。

  • Name:需要連上的機(jī)器的名字
  • of executors:表示在slave上可以并行執(zhí)行幾個(gè)線程,也可以點(diǎn)后面的問號(hào)看說明吞歼。對(duì)于RF來說圈膏,建議設(shè)置為1塔猾。

  • Remote root Directory(遠(yuǎn)程工作目錄):在slave上創(chuàng)建jenkins工作目錄的路徑篙骡,設(shè)置為D:\JK即可
  • Labels(標(biāo)簽):可以給slave加上一個(gè)或多個(gè)標(biāo)簽,通過標(biāo)簽選擇slave
  • Launch method(啟動(dòng)方法):啟動(dòng)slave的方法丈甸,推薦選第二個(gè)Launch slave agents via JavaWeb Start(如果這個(gè)選項(xiàng)沒有出來的話糯俗,你需要到Config Global Security里面去設(shè)置開啟對(duì)應(yīng)的協(xié)議,如下圖
configureSecurity.png

)
3 啟動(dòng)Slave和Master之間的聯(lián)系睦擂,剛建好的時(shí)候你會(huì)發(fā)現(xiàn)Slave還處于一個(gè)離線狀態(tài)得湘,此時(shí)點(diǎn)擊Slave,可以看到有一個(gè)Launch的按鈕

launch.png

點(diǎn)擊后下載slave-agent.jnlp文件顿仇,如果運(yùn)行后發(fā)現(xiàn)鏈接不上的話淘正,可以打開此文件進(jìn)行編輯,主要是master的ip需要是想對(duì)應(yīng)的master ip(因?yàn)槲业膌inux服務(wù)器的ip有時(shí)會(huì)變化臼闻,所以常需要改ip)

edit slave.png
connect.png

4 安裝RF插件
Jenkins是一個(gè)很強(qiáng)大的工具鸿吆,它可以擴(kuò)展許多的插件,大部分的插件安裝方式都類似述呐,主要介紹其中一種惩淳。
回到Jenkins首頁,進(jìn)入系統(tǒng)管理乓搬,點(diǎn)擊管理插件思犁,那里有可更新、可選插件进肯、已安裝和高級(jí)幾個(gè)頁面激蹲。
可選插件里面列了所有的插件和簡單介紹,點(diǎn)擊他的連接可以進(jìn)到插件的主頁江掩,里面有詳細(xì)的介紹学辱。

RF的插件下載路徑http://mirrors.jenkins-ci.org/plugins/robot/
下載得到robot.hpi文件后在高級(jí)-上傳插件中把此插件上傳后即安裝成功,重啟Jenkins以后就可以在首頁的任務(wù)欄最后一列上看到RF的標(biāo)識(shí)频敛。

5 配置Job來完成RF腳本的自動(dòng)化
首頁上New Item(新建)项郊,選擇freestyle風(fēng)格的項(xiàng)目

Newitem.png

對(duì)于RF的Job來說,自由風(fēng)格就可以了斟赚。多配置也可以着降,只不過多配置的略有不方便,看各自需要吧拗军,比如你要把一套案例在多個(gè)不同配置的slave上執(zhí)行任洞,就可以用多配置的Job蓄喇。
之后進(jìn)到配置頁面

build.png

可配置的地方很多,此次只設(shè)置了必須設(shè)置的地方交掏。

  • General部分
    Restrict where this project can be run: 前面的標(biāo)簽就在這里用上了妆偏。用來指定這個(gè)Job在哪個(gè)標(biāo)簽的slave上執(zhí)行。
  • Source Code Management(源碼管理)部分
    此次選擇的是None盅弛,當(dāng)然你可以選擇從SVN或者Git上獲取钱骂,但是這個(gè)也需要相關(guān)的插件支持
  • Buid(構(gòu)建)部分
    要增加構(gòu)建步驟-Execute Windows batch command
    簡單的來說就是你在你的windows的cmd命令行上可以執(zhí)行的命令都可以寫在此處。我們的RF腳本是用Pybot.bat 來驅(qū)動(dòng)執(zhí)行的挪鹏,比如命令行為 :
    pybot.bat D:\Python\Robot\03OAInvalidLogin.robot
  • Post build Actions(構(gòu)建后動(dòng)作)部分
    增加構(gòu)建后步驟-Publishes Robot Framework test results见秽,第一個(gè)output默認(rèn)可以為空,如果前面的pybot.bat指定了輸出目錄讨盒,那么這里也要對(duì)應(yīng)進(jìn)行設(shè)置解取,否則他找不到output.xml就沒法解析結(jié)果了。
    完成后保存返顺。

6 在首頁可以點(diǎn)擊Build Now的操作禀苦,可以點(diǎn)構(gòu)建的進(jìn)度條直接看到控制臺(tái)輸出,或者在點(diǎn)構(gòu)建的名字在菜單里找控制臺(tái)輸出看結(jié)果遂鹊。

console.png

裝了RF插件的效果就是你可以在首頁上看到最后執(zhí)行的結(jié)果和圖形顯示的界面(還能對(duì)于這個(gè)看臉的世界說什么呢振乏,攤手)

build result.png
result.png

Jenkins只是一個(gè)非常好的CI工具,你也可以采用其它的方式來自動(dòng)化執(zhí)行你的robot腳本或者python腳本稿辙。
以上昆码。

夏目.jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市邻储,隨后出現(xiàn)的幾起案子赋咽,更是在濱河造成了極大的恐慌,老刑警劉巖吨娜,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件脓匿,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡宦赠,警方通過查閱死者的電腦和手機(jī)陪毡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來勾扭,“玉大人毡琉,你說我怎么就攤上這事∶钌” “怎么了桅滋?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我丐谋,道長芍碧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任号俐,我火速辦了婚禮泌豆,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘吏饿。我一直安慰自己踪危,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布找岖。 她就那樣靜靜地躺著陨倡,像睡著了一般敛滋。 火紅的嫁衣襯著肌膚如雪许布。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天绎晃,我揣著相機(jī)與錄音蜜唾,去河邊找鬼。 笑死庶艾,一個(gè)胖子當(dāng)著我的面吹牛袁余,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播咱揍,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼颖榜,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了煤裙?” 一聲冷哼從身側(cè)響起掩完,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎硼砰,沒想到半個(gè)月后且蓬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡题翰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年恶阴,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片豹障。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡冯事,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出血公,到底是詐尸還是另有隱情昵仅,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布坞笙,位于F島的核電站岩饼,受9級(jí)特大地震影響荚虚,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜籍茧,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一版述、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧寞冯,春花似錦渴析、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至漓帚,卻和暖如春母债,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背尝抖。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工毡们, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人昧辽。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓衙熔,卻偏偏與公主長得像,于是被迫代替她去往敵國和親搅荞。 傳聞我的和親對(duì)象是個(gè)殘疾皇子红氯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

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