Jmeter(二十六)Jmeter-Question之「集成Jenkins」

  Jenkins,最初被稱爲Hudson,是一個Java語言編寫的開源持續集成工具。Jenkins在持續集成領域的市場份額居於主導地位,其被各類規模的團隊用於各類語言和技術的項目中,好比.net。ruby。Groovy。Java等。css

  Jenkins的用戶界面很是簡單、直觀、增長了視覺上的吸引力,其次具備良好的擴展性,可以及其靈活和方便的迎合你的想法。它有數以百計的開源插件可供使用,並且每週都有更多的插件貢獻進來。這些開源插件覆蓋系統的版本控制、構建工具、代碼質量度量、構建通知、外部系統集成、用戶界面定製化、遊戲等。        ---摘自<Jenkins權威指南>html

  Jenkins做爲一款優秀的集成工具,是很是成功的。從單方面的簡潔GUI、功能等優秀特色,更多的是迎合了現今軟件的開發模式以及管理模式,本人有了解,在去年的一場Jenkins的技術分享會上,有提到Jenkins的插件已經達到1340多個,真是一個恐怖的數字。所以,稱之它爲一手插件堆起來的功能,一點也不爲過。linux

  固然,Jenkins優秀歸優秀,那麼它能幫咱們來幹什麼呢?Jmeter又如何和Jenkins進行相互‘溝通’進行工做呢?shell

  (具體Jenkins的安裝方式便不在記了)windows

  自3.0起Jmeter,已經有了豐富的圖表展現,以前的話是用借用ant進行構建,ant生成圖形報表,而3.0之後,能夠直接顯示本身的圖表,便沒必要要(固然也是也能夠的,後續記上)去加ant。tomcat

  其具體的實現方式仍是Jmeter的no GUI方式運行,使用Jenkins的插件將Jmeter生成的圖表展示出來。OK,上例子。安全

  

  使用GUI界面進行調試,線程10,10s內啓動,循環10次,一個Sampler,有100次Sampler進行請求。ruby

  執行命令,如圖,運行生成jtl、log文件工具

  

  加上-e -o參數(及相應路徑)生成Jmeter自帶的html報告.net

  

  

  OK、我這個是執行過的,報告也展示了出來。

  那麼Jenkins上是怎麼玩的呢?直接上Demo。

  

 

   直接新建一個自由風格的project。

  源碼管理、構建觸發器暫且用不到(做爲一個簡單的demo)

  直接構建、選用插件Execute Windows batch command;(由於個人tomcat在本地搭建,本地爲windos環境,所以會選用該插件,如若爲linux,先用Excute shell便可)

  

  上方在終端命令行中運行的命令直接放入該插件。

  

 首先先將本地的jmx文件以Jenkins進行運行一遍,並輸出jtl、log的日誌文件。

保存並點擊「當即構建」

 

 構建成功,紅色即失敗。

查看本次構建的日誌信息。

 

能夠看的出來,本地文件是構建成功的,再至本地日誌存放目錄,查看日誌文件是否生成。

日誌文件也是生成了。可以使用Jmeter的監控器(結果樹等)進行查看日誌信息。

OK,再進行加入生成report的參數-e、-o進行生成可視化報告。

當即構建。

至本地查看該report文件是否生成。

 

 截至此處,使用Jenkins進行構建Jmeter工程並生成各類日誌文件已經完成。

確定仍是有困惑的,那就是直接在Jenkins查看它的日誌報告,Jenkins是徹底支持的。

很eazy,增長構建後操做:

插件Publish HTML reports進行查看。

OK,接着構建。

能夠看到該結果是成功的,那麼至Jenkins目錄HTML Report進行查看該報告。

 

 什麼鬼,居然什麼信息都查看不到?

網上有相關問題的回答。不過此處也記錄一下,這是因爲Jenkins的安全機制,將css等頁面渲染信息都進行了攔截,能夠打開F12,開發者工具進行查看攔截的信息。

那麼也是有解決方案的。

有暫時解決方案,也有一勞永逸的解決方案。

整理了一下方案,大體有三種:

  一、若是Jenkins是在Tomcat下進行搭建的,那麼能夠直接修改Tomcat的啓動文件參數(具體本人並未實現)

  二、使用Jenkins的腳本命令行工具,加一段Groovy代碼「System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")」

    該方案爲暫時性解決方案,本次構建能夠進行生效,但是當重啓一次Jenkins便會失效,從新加入該段代碼。

  三、在構建過程當中加入一個步驟Execute system Groovy Script,輸入「System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")」代碼段,即可一勞永逸,即便重啓,該段功能也不會失效。

在此,便使用第三種方案進行實現。

  

OK,再進行構建一次,查看HTML Report。

 

 嗯哼、將數據展示了出來。

收工~~~看書。

 對了、若是在windows的環境下,須將Jenkins的工做目錄等移動至其餘目錄(儘可能不要放在C盤下),C盤爲系統盤,涉及各類權限,工做目錄在C盤下進行構建的話,有時會出現,本地的日誌文件等所有都生成了,可是Jenkins的構建結果就是失敗,報一系列莫名其妙的錯誤~~

至於Jenkins移動工做目錄,很eazy,添加環境變量、工做目錄遷移便可,百度一下更精彩! 

相關文章
相關標籤/搜索