自動化持續(xù)集成

一、概念

互聯(lián)網(wǎng)軟件的開發(fā)和發(fā)布,已經(jīng)形成了一套標(biāo)準(zhǔn)流程伶唯,最重要的組成部分就是持續(xù)集成(Continuous integration,簡稱CI)

1.1. 持續(xù)集成(采蜜)

持續(xù)集成指的是惧盹,頻繁地(一天多次)將代碼集成到主干乳幸。

它的好處主要有兩個:

(1)快速發(fā)現(xiàn)錯誤。每完成一點(diǎn)更新钧椰,就集成到主干粹断,可以快速發(fā)現(xiàn)錯誤,定位錯誤也比較容易嫡霞。

(2)防止分支大幅偏離主干瓶埋。如果不是經(jīng)常集成,主干又在不斷更新诊沪,會導(dǎo)致以后集成的難度變大养筒,甚至難以集成。

持續(xù)集成的目的端姚,就是讓產(chǎn)品可以快速迭代晕粪,同時還能保持高質(zhì)量。它的核心措施是渐裸,代碼集成到主干之前巫湘,必須通過自動化測試。只要有一個測試用例失敗橄仆,就不能集成剩膘。

1.2. 持續(xù)交付

持續(xù)交付(Continuous delivery)指的是,頻繁地將軟件的新版本盆顾,交付給質(zhì)量團(tuán)隊(duì)或者用戶怠褐,以供評審。如果評審?fù)ㄟ^您宪,代碼就進(jìn)入生產(chǎn)階段奈懒。

持續(xù)交付可以看作持續(xù)集成的下一步。它強(qiáng)調(diào)的是宪巨,不管怎么更新磷杏,軟件是隨時隨地可以交付的。

1.3. 持續(xù)部署

定義:持續(xù)部署(continuous deployment)是持續(xù)交付的下一步捏卓,指的是代碼通過評審以后极祸,自動部署到生產(chǎn)環(huán)境。

目標(biāo):代碼在任何時刻都是可部署的,可以進(jìn)入生產(chǎn)階段遥金。

前提:能自動化完成測試浴捆、構(gòu)建、部署等步驟稿械。

二选泻、Jenkins介紹

2.1.? Jenkins概念

Jenkins 是一個開源軟件項(xiàng)目,是基于Java開發(fā)的一種可拓展持續(xù)集成工具美莫,主要用于持續(xù)页眯、自動地構(gòu)建 / 測試 / 集成軟件項(xiàng)目以及監(jiān)控一些定時執(zhí)行的任務(wù)。

2.2. Jenkins目的

1厢呵、持續(xù)窝撵、自動地構(gòu)建/測試軟件項(xiàng)目。

2述吸、監(jiān)控軟件開放流程忿族,快速問題定位及處理,提示開放效率蝌矛。

2.3. 特性

?? 易于安裝道批,只要把 jenkins.war 部署到 Tomcat 即可運(yùn)行

?? 易于配置,所有配置都是通過其提供的 web 界面實(shí)現(xiàn)

?? 集成 RSS/E-mail入撒,通過 RSS 發(fā)布構(gòu)建結(jié)果或當(dāng)構(gòu)建完成時通過 e-mail 通知

?? 生成 JUnit / TestNG 測試報告

?? 分布式構(gòu)建隆豹,支持 Jenkins 能夠讓多臺計算機(jī)一起構(gòu)建/測試

?? 插件支持,支持?jǐn)U展插件茅逮,你可以開發(fā)適合自己團(tuán)隊(duì)使用的工具

2.4. 產(chǎn)品發(fā)布流程

產(chǎn)品設(shè)計成型 → 開發(fā)人員開發(fā)代碼 → 測試人員測試功能 → 運(yùn)維人員發(fā)布上線

三璃赡、安裝配置Jenkins

去官網(wǎng)下載jenkins.war包。

官網(wǎng)地址

3.1 兩種方式開啟Jenkins

方式1:

在tomcat的bin目錄下啟動(最常用)

方式2:

打開cmd献雅,進(jìn)入jenkins目錄碉考,然后運(yùn)行命令:java -jar jenkins.war

四、搭建JMeter+Jenkins+Ant持續(xù)化

Ant下載及配置安裝

下載Apache-ant

解壓到你想要安裝的目錄

配置環(huán)境變量

驗(yàn)證是否安裝成功

拷貝Jemter包到ant下

新建一個build.xml文件挺身,里面填入如下代碼

<?xml version="1.0" encoding="UTF-8"?><projectname="ant-jmeter-test"default="run"basedir="."><!-- 需要改成自己本地的 Jmeter 目錄--><propertyname="jmeter.home"value="G:\jmeter\apache-jmeter-3.0"/><!-- jmeter生成jtl格式的結(jié)果報告的路徑--><propertyname="jmeter.result.jtl.dir"value="G:\jmeter\jmeter-ant-jenkins\testResult"/><!-- jmeter生成html格式的結(jié)果報告的路徑--><propertyname="jmeter.result.html.dir"value="G:\jmeter\jmeter-ant-jenkins\testResult"/><!-- 生成的報告的前綴--><propertyname="ReportName"value="TestReport"/><propertyname="jmeter.result.jtlName"value="${jmeter.result.jtl.dir}/report.jtl"/><propertyname="jmeter.result.htmlName"value="${jmeter.result.html.dir}/index.html"/><!-- 接收測試報告的郵箱 --><propertyname="mail_to"value="barryli89@163.com"/><propertyname="lib.dir"value="${jmeter.home}/lib"/><pathid="xslt.classpath"><filesetdir="${lib.dir}"includes="xalan*.jar"/><filesetdir="${lib.dir}"includes="serializer*.jar"/></path><targetname="run"><antcalltarget="test"/><antcalltarget="report"/></target><targetname="test"><taskdefname="jmeter"classname="org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"/><jmeterjmeterhome="${jmeter.home}"resultlog="${jmeter.result.jtlName}"><!-- 聲明要運(yùn)行的腳本侯谁。"*.jmx"指包含此目錄下的所有jmeter腳本--><testplansdir="G:\jmeter\jmeter-ant-jenkins"includes="*.jmx"/><propertyname="jmeter.save.saveservice.output_format"value="xml"/></jmeter></target><targetname="report"><!-- 因?yàn)樯厦嫔蓤蟾娴臅r候,不會將相關(guān)的圖片也一起拷貝至目標(biāo)目錄章钾,所以墙贱,需要手動拷貝 --></xslt><copytodir="${jmeter.result.html.dir}"><filesetdir="${jmeter.home}/extras"><includename="collapse.png"/><includename="expand.png"/></fileset></copy></target></project>

進(jìn)行命令行模式后,進(jìn)入剛才創(chuàng)建的xml文件存放目錄贱傀,如:D:\build 輸入ant即可

五惨撇、集成jenkins

打開Jenkins,配置Ant環(huán)境

新建一個自由風(fēng)格任務(wù)

構(gòu)建觸發(fā)器

構(gòu)建配置

配置HTML插件

立即構(gòu)建

針對報告中不顯示聚合報告的情況

Jenkins執(zhí)行自動化測試后發(fā)送測試報告郵件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末府寒,一起剝皮案震驚了整個濱河市魁衙,隨后出現(xiàn)的幾起案子报腔,更是在濱河造成了極大的恐慌,老刑警劉巖纺棺,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件榄笙,死亡現(xiàn)場離奇詭異邪狞,居然都是意外死亡祷蝌,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門帆卓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來巨朦,“玉大人,你說我怎么就攤上這事剑令『龋” “怎么了?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵吁津,是天一觀的道長棚蓄。 經(jīng)常有香客問我,道長碍脏,這世上最難降的妖魔是什么梭依? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮典尾,結(jié)果婚禮上役拴,老公的妹妹穿的比我還像新娘。我一直安慰自己钾埂,他們只是感情好河闰,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著褥紫,像睡著了一般姜性。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上髓考,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天部念,我揣著相機(jī)與錄音,去河邊找鬼绳军。 笑死印机,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的门驾。 我是一名探鬼主播射赛,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼奶是!你這毒婦竟也來了楣责?” 一聲冷哼從身側(cè)響起竣灌,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎秆麸,沒想到半個月后初嘹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡沮趣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年屯烦,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片房铭。...
    茶點(diǎn)故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡驻龟,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出缸匪,到底是詐尸還是另有隱情翁狐,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布凌蔬,位于F島的核電站露懒,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏砂心。R本人自食惡果不足惜懈词,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望计贰。 院中可真熱鬧钦睡,春花似錦、人聲如沸躁倒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽秧秉。三九已至褐桌,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間象迎,已是汗流浹背荧嵌。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留砾淌,地道東北人啦撮。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像汪厨,于是被迫代替她去往敵國和親赃春。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評論 2 353

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

  • 一劫乱、概念 互聯(lián)網(wǎng)軟件的開發(fā)和發(fā)布织中,已經(jīng)形成了一套標(biāo)準(zhǔn)流程锥涕,最重要的組成部分就是持續(xù)集成(Continuous in...
    三歲虓閱讀 352評論 0 0
  • 一、概念 互聯(lián)網(wǎng)軟件的開發(fā)和發(fā)布狭吼,已經(jīng)形成了一套標(biāo)準(zhǔn)流程层坠,最重要的組成部分就是持續(xù)集成(Continuous in...
    老友_9e40閱讀 236評論 0 0
  • 一、介紹 Requests是一個很實(shí)用的Python HTTP客戶端庫刁笙,編寫爬蟲和測試服務(wù)器響應(yīng)數(shù)據(jù)時經(jīng)常會用到破花,...
    會冒泡的魚____閱讀 255評論 0 0
  • 一、概念 互聯(lián)網(wǎng)軟件的開發(fā)和發(fā)布采盒,已經(jīng)形成了一套標(biāo)準(zhǔn)流程旧乞,最重要的組成部分就是持續(xù)集成(Continuous in...
    九櫻MOL閱讀 173評論 0 0
  • 一、概念 互聯(lián)網(wǎng)軟件的開發(fā)和發(fā)布磅氨,已經(jīng)形成了一套標(biāo)準(zhǔn)流程,最重要的組成部分就是持續(xù)集成(Continuous in...
    小胡_12ee閱讀 1,212評論 0 0