為什么我們要引入RF比驻?其實(shí)最初我們引入RF是為了能夠快速的開(kāi)展自動(dòng)化驗(yàn)收測(cè)試哮肚,為敏捷保駕護(hù)航。這其中有個(gè)重要的工具Jenkins稚茅,這次就來(lái)介紹一下RF如何快速便捷的結(jié)合Jenkins這一利器在windows上進(jìn)行自動(dòng)化測(cè)試(linux我沒(méi)裝機(jī)器,大體步驟差不多平斩,度娘應(yīng)該有)亚享。
其實(shí)個(gè)人覺(jué)得RF和Jenkins的結(jié)合很簡(jiǎn)單,概括一下就這幾點(diǎn):
1绘面、下載Jenkins
2虹蒋、添加節(jié)點(diǎn)
3、安裝robotframework插件
4飒货、配置job運(yùn)行測(cè)試? ?
一、下載及安裝Jenkins
1.下載地址:http://mirrors.jenkins-ci.org/
2.詳細(xì)安裝過(guò)程請(qǐng)見(jiàn)《手把手教你搭建Jenkins+Jmeter+Ant自動(dòng)化集成環(huán)境www.reibang.com/writer#/notebooks/13377041/notes/17108032》里的下載安裝過(guò)程峭竣,或自行度娘安裝塘辅。
3.打開(kāi)我們的jenkins地址:http://192.168.1.6:8080(IP以你本機(jī)IP為準(zhǔn),也可用localhost皆撩,比起tomcat來(lái)說(shuō)扣墩,url還不用寫(xiě)jenkins),里面的test2不用理會(huì)扛吞。會(huì)看到如下圖的頁(yè)面:
4.管理插件,添加Robot Framework plugin
二呻惕、添加節(jié)點(diǎn)
我們啟動(dòng)Jenkins服務(wù)的這臺(tái)機(jī)器在Jenkins里叫做master,而其他的連到master上的機(jī)器(物理機(jī)滥比、虛擬機(jī)都可以)都是slave亚脆,也叫節(jié)點(diǎn)。
1.點(diǎn)擊系統(tǒng)管理盲泛,然后點(diǎn)擊管理節(jié)點(diǎn)濒持,就看到如下界面:
2.點(diǎn)擊新建節(jié)點(diǎn)
(這是靜態(tài)連接的方式,就是我先設(shè)置好節(jié)點(diǎn)寺滚,由slave自己去連master作為這個(gè)節(jié)點(diǎn)柑营。另外也有一種動(dòng)態(tài)連接的方式,不用先設(shè)置好節(jié)點(diǎn)村视,直接用slave.jar連過(guò)來(lái)官套,這里就不詳細(xì)介紹了)
3.輸入slave的名字,點(diǎn)確定
上圖有幾個(gè)需要注意的地方我標(biāo)注了一下:
a蚁孔、executors:表示在slave上可以并行執(zhí)行幾個(gè)線程奶赔,也可以點(diǎn)后面的問(wèn)號(hào)看說(shuō)明。對(duì)于RF來(lái)說(shuō)勒虾,建議設(shè)置為1纺阔。
b、遠(yuǎn)程工作目錄:在slave上創(chuàng)建jenkins工作目錄的路徑修然,我一般設(shè)置為D:\JK
c笛钝、標(biāo)簽:可以給slave加上一個(gè)或多個(gè)標(biāo)簽质况,通過(guò)標(biāo)簽選擇slave
d、啟動(dòng)方法:?jiǎn)?dòng)slave的方法玻靡,推薦選第二個(gè)Launch slave agents via Java Web Start结榄。
注意:如果在jenkins的啟動(dòng)方法找不到Launch slave agents using Java Web Start這個(gè),請(qǐng)按此步驟設(shè)置:系統(tǒng)管理-Configure Global Security-TCP port for JNLP agents是被禁用的囤捻,選擇隨機(jī)選取或者自行制定端口即可臼朗。記住,如果是用來(lái)執(zhí)行RF自動(dòng)化測(cè)試案例的slave蝎土,嚴(yán)禁選擇windows service的方式视哑,否則后果自負(fù)。
4.保存后 此時(shí)的節(jié)點(diǎn)是不能使用的
5.點(diǎn)擊目標(biāo)節(jié)點(diǎn)slave1誊涯,彈出如下界面
6.點(diǎn)擊Agent slave1界面的“Launch”按鍵下載slave-agent文件挡毅。啟動(dòng)方式1:下載后雙擊slave-agent文件,彈出如下右側(cè)界面暴构,connect表示已連接(一般用在Windows系統(tǒng)上跪呈,需要javaws.exe(在Java的bin目錄中可以找到)程序才能打開(kāi)。如果提示錯(cuò)誤取逾,請(qǐng)卸載JDK后重新安裝耗绿。)
啟動(dòng)方式2:下載slave.jar到本地,然后進(jìn)入存放slave.jar的目錄砾隅,復(fù)制粘貼并運(yùn)行java -jar slave.jar -jnlpUrl http://xxxxx即可啟動(dòng)误阻。
三、配置運(yùn)行Job任務(wù)
1.點(diǎn)擊Jenkins左上角的“新建”晴埂,在下圖中輸入名稱堕绩,并選擇“構(gòu)建一個(gè)自由風(fēng)格的軟件項(xiàng)目”,點(diǎn)擊確定
2.設(shè)置丟棄舊的構(gòu)建(此步可以設(shè)置邑时,可以不設(shè)置奴紧。無(wú)要求)
3.在“構(gòu)建”中選擇“Execute Windows batch command”,輸入指令"pybot.bat D:\work\RIDE\test\testsuit.txt"(RF的工作目錄)
4.構(gòu)建后操作:我們要增加構(gòu)建后步驟-Publishes Robot Framework test results晶丘,第一個(gè)output默認(rèn)可以為空黍氮,如果前面的pybot.bat指定了輸出目錄,那么這里也要對(duì)應(yīng)進(jìn)行設(shè)置浅浮,否則他找不到output.xml就沒(méi)法解析結(jié)果了沫浆。
5.配置郵件,在構(gòu)建后操作中選擇“Editable Email Notification”滚秩,分別設(shè)置Content Type和寫(xiě)入如下郵件通知模板至Default Content中专执,然后點(diǎn)擊保存。
(本郵件是程序自動(dòng)下發(fā)的郁油,請(qǐng)勿回復(fù)本股!)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
構(gòu)建結(jié)果 - ${BUILD_STATUS}? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
構(gòu)建信息? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
項(xiàng)目名稱 : ${PROJECT_NAME}? ? ? ? ? ? ? ? ? ?
構(gòu)建編號(hào) : 第${BUILD_NUMBER}次構(gòu)建? ? ? ? ? ? ? ? ? ?
SVN 版本: ${SVN_REVISION}? ? ? ? ? ? ? ? ? ?
觸發(fā)原因: ${CAUSE}? ? ? ? ? ? ? ? ? ?
構(gòu)建日志: ${BUILD_URL}console? ? ? ? ? ? ? ? ? ?
構(gòu)建? Url : ${BUILD_URL}? ? ? ? ? ? ? ? ? ?
工作目錄 : ${PROJECT_URL}ws? ? ? ? ? ? ? ? ? ?
項(xiàng)目? Url : ${PROJECT_URL} ? ?Changes Since Last ? Successful Build:? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
歷史變更記錄 : ${PROJECT_URL}changes ${CHANGES_SINCE_LAST_SUCCESS,reverse=true, format="Changes for Build #%n:%c",showPaths=true,changesFormat="[%a]%m",pathFormat="? ? %p"} ? Failed Test Results ? ?$FAILED_TESTS ?
構(gòu)建日志 (最后 100行): ? ${BUILD_LOG, maxLines=100}
6.打開(kāi)slave agent彈出connected提示框后攀痊,點(diǎn)擊左上角的“立即構(gòu)建”按鍵。如下圖
7.可以點(diǎn)構(gòu)建的進(jìn)度條直接看到控制臺(tái)輸出拄显,或者在點(diǎn)構(gòu)建的名字在菜單里找控制臺(tái)輸出看結(jié)果苟径。
8.分別點(diǎn)擊Result的三種報(bào)告輸入,可現(xiàn)實(shí)不同的顯示結(jié)果樣式
9.接收者郵箱顯示信息
四躬审、上面講述了如何配置一個(gè)普通的Jenkins Job任務(wù)棘街,但此類型任務(wù)需人工的手動(dòng)去執(zhí)行構(gòu)建操作,而Jenkins也可以配置定時(shí)任務(wù)承边,從而讓我們配置好的JOB在我們指定的時(shí)間去自動(dòng)執(zhí)行遭殉,下面講述如何配置Jenkins定時(shí)任務(wù)。
1博助、添加節(jié)點(diǎn)恩沽,配置Job等方法,步驟如上面操作所示翔始。
2、在配置Job時(shí)里伯,其中有一個(gè)構(gòu)建觸發(fā)器的選項(xiàng)城瞎,如圖所示:
如上述,選擇build periodly(即周期構(gòu)建)疾瓮,如上圖表示每天2:00自動(dòng)構(gòu)建一次脖镀。
日程表(Build periodically)格式:用cron格式,五個(gè)空格隔開(kāi)的字符組成狼电,分別表示分 時(shí) 天 月 年蜒灰,*表示所有,如下圖配置:
H 2 * * * (每天2:00 必須build一次源碼)
在 Schedule 中填寫(xiě) 0 * * * *肩碟。
第一個(gè)參數(shù)代表的是分鐘 minute强窖,取值 0~59;
第二個(gè)參數(shù)代表的是小時(shí) hour削祈,取值 0~23翅溺;
第三個(gè)參數(shù)代表的是天 day,取值 1~31髓抑;
第四個(gè)參數(shù)代表的是月 month咙崎,取值 1~12;
最后一個(gè)參數(shù)代表的是星期 week吨拍,取值 0~7褪猛,0 和 7 都是表示星期天。
例1:0 12羹饰,20 * * *表示的就是每天的12點(diǎn)和20點(diǎn)執(zhí)行一次構(gòu)建
例2:*/5 * * * *表示每5分鐘執(zhí)行一次構(gòu)建
例3:0 2 * * *表示每天2點(diǎn)執(zhí)行一次構(gòu)建
3伊滋、通過(guò)增加build periodly選項(xiàng)碳却,就可完成自動(dòng)構(gòu)建任務(wù)。
以上就是本人學(xué)習(xí)Robot Framework的步驟新啼,都是經(jīng)過(guò)本人親測(cè)通過(guò)的追城,如有不懂或說(shuō)的不到位的地方,希望大家多多指教燥撞,共同學(xué)習(xí)座柱,共同進(jìn)步。我就是keitwo物舒!