WINDOWS10系統下
環境
172.16.0.115虛擬機windows系統做爲遠程節點。
jenkins安裝在172.16.0.119:8088虛擬機中。
1、安裝配置Java環境
windows10中安裝java
JAVA_HOME:安裝地址
path:
%Java_Home%\bin
%Java_Home%\jre\bin
2、安裝jmeter
可經過直接運行ApacheJmeter啓動jmeter
此安裝的jmeter3.4.0版本。
3、.Jenkins配置(遠程鏈接windows10)
參考:
配置jenkins(linux系統下)做爲master遠程構建執行windows系統slave測試。
實現安裝在Linux的Jenkins能夠執行Windows下的selenium test case
1.配置Jenkins的Windows節點
1.1 點擊左側面板中:
系統管理->管理節點
1.2 點擊左側面板:新建節點
1.3 輸入節點名稱,選擇Dumb Slave(如今叫Permanent Agent),點擊OK
1.4 輸入相關配置,點擊save(需提早在windows上建立一個遠程的Jenkins工做目錄,以下圖:c:\jenkins_jmeter)
# of executors:同時可運行的job數量,默認爲1
遠程工做目錄:目標Windows的工做目錄
標籤:用來指定job以什麼方式來進行構建
用法:選擇「只容許運行綁定到這臺機器的job」
啓動方法:選擇「Launch slave agents via Java Web Start」,Windows機器推薦選擇該方法
共有四種方式鏈接,其中web start 針對windows較穩定。其中「let jenkins control this windows slave as windows service」至最穩定的一種,可是配置相對複雜,是直接以使用windows用戶帳號的形式登陸windows控制,容許windows只能登一個帳號,因此後期再研究這種方式。
* 其餘可隨意或默認
1.5 save成功後出現如下記錄
以你建立的名字顯示的,未鏈接的節點機器。若取名「windows demo」則以下圖
1.6 配置Windows機器
在目標Windows目錄中建立上述的遠程工做目錄:C:\jenkins_jmeter(此工做目錄,爲節點默認工做目錄,後面可在工程任務中單獨設置工做目錄)
點擊機器名:Windows_demo,出現以下頁面:
將Run from slave command line下的slave.jar下載到遠程工做目錄下,同時將Java命令複製到txt文件中,保存成bat文件。
雙擊bat文件,創建Windows與Jenkins之間的聯繫。
* 可將open_connecte.bat拖至win->all programs->startup,開機自啓動
在管理節點中可看到鏈接信息:
注意事項:1.使用 Launch slave agents via Java Web Start的方式鏈接windows,要求windows 中安裝java 版本至少8以上。(日誌中報錯只會提示沒法鏈接)
2 Master Jenkins服務器端的配置細節
Two solutions seem to be coming up:
Download the JNLP file (via browser, wget, curl, whatever) then run locally - may require extra parameters.
Go to Manage Jenkins -> Configure Global Security, and under Project-based Matrix Authorization Strategy, enable 「connect」 in the 「slave」 section, for user 「Anonymous」. This would leave you open to attack where someone emulates a slave (but in my case, on a private work network - that's not an issue.)
具體操做是進入jenkins主界面,而後進入Manage Jenkins -> Configure Global Security ,勾選其中的anonymous用戶的slave部分的權限。以下:
鏈接成功撒花✿✿ヽ(°▽°)ノ✿。
4、安裝配置ant
在windows遠程節點115上安裝ant
java版本1.8,和ant版本1.8匹配。並下載ant1.8進行安裝。
環境變量配置:
ANT_HOME:安裝文件路徑
Path:%ANT_HOME%\bin
ClassPath: %ANT_HOME%\lib
安裝完成。
5、jenkins配置任務(runJmeter工做)
1.建立項目任務:命名「RunJmeter_win10_115」
2.配置工程
2-1.勾選Restrict where this project can be run,限制項目運行節點 (肯定工程運行的節點,也就是咱們的115windows虛擬機)
2-2.勾選「使用自定義的工做空間」,並輸入節點windows上的項目工做根目錄。(輸入根目錄後,接下來的設計目錄路徑的地方都是以此根目錄開始)
2-3.在構建中,選擇「invoke ant」藉助ant執行構建項目,填寫構建xml文檔,後面將如何編寫build.xml。(此時填寫絕對路徑、或相對路徑都行,相對路徑既相對工做空間根目錄設置)
2-4構建後操做中,「增長構建後操做步驟」下拉選擇「Publish HTML reports」。
2-5在publish Html reports中配置,其中JmeterTestReports.html文件,爲構建後產生的報告文件,須要在build.xml中去命名,名稱需一致。
2-6構建後操做,再增長「Publish Performance test result report",並進行配置。填寫Jmeter生成的Jtl結果文件路徑和文件名稱。此jtl文件名稱依舊會在build.xml文件中命名。後面會講到。ps.若不想寫死文件名稱,可用「*.jtl」代替,表述讀取當前文件夾下全部jtl格式的文件,弊端是若沒有清理之前的jtl文件,展現出其餘的結果。
2-7增長構建後操做,「E-mail Notification」簡單的發信,構建失敗即發送郵件。(ps.沒法判斷構建成功,但jmeter中執行失敗的狀況,沒法發信,後面將增長工程任務,專門判斷Jmeter結果中若是有failed,則發信提醒。)如何配置jenkins發信郵箱,請百度。
6、在windows遠程節點上部署文件和構建ant與jmeter文件目錄
6-1.windows10(172.16.0.115)c盤下目錄路徑以下圖。
其中,jenkins_jmeter文件夾爲鏈接jenkins單獨設置的節點工做空間。
ant和jmeter本來能夠不用在AutoTestJmeter_Jenkins文件夾下,只是爲了方便管理和維護,在Build.xml文件中會寫到jmeter的路徑,所以統一放到此目錄下。
按照以下圖結構,去建立文件夾,名字及大小寫一致,可不用更改build.xml。若更改,則xml跟隨更改。
6-2.配置編寫build.xml
build.xml分別有詳細的複雜,和簡單部分編寫的簡單版。接下來介紹簡單的
具體詳細的都在文件中有備註,此處很少說了 。
7、在Jenkins上建立後續發信任務。(構建成功,但jmeter執行失敗,發送執行失敗的報錯信息)
7-1建立新項目任務,取名「After115SendEmails」,或者本身隨便取。
勾選Restrict where this project can be run ,並輸入windows系統節點。
勾選「使用自定義的工做空間」並輸入windows定義的工做根目錄。
此處配置與配置主要Jmeter項目任務相同。
7-2 構建觸發器
勾選「Bulid after other project are built」,並輸入上一執行Jmeter項目的名稱。
7-3 增長構建步驟
下拉選擇「Execute Windows batch command」,
7-3-1 使用cmd命令進行執行讀html報告中,是否有100.00%字符判斷接口測試是成功。
cd Reports
cd ReportsHtml
setlocal enabledelayedexpansion
call findstr "100.00%%" JmeterTestReports.html
::判斷是否查找到false,成功找到返回0,沒有找到返回1。沒有找到exit退出系統,併發送郵件。
if %errorlevel% == 1 exit
7-3-2 將後面的發信觸發條件「 Triggers 」更改成success,使用以下判斷false是否存在,肯定是否發送郵件。(目的是,當一個jmx文件中存在多個接口測試,則須要判斷false,而不是100%)
cd Reports
cd ReportsHtml
setlocal enabledelayedexpansion
call findstr "false" JmeterTestReports.html
::判斷是否查找到false,成功找到返回0,沒有找到返回1。找到返回0,exit退出系統,併發送郵件。後邊觸發條件是構建成功則發送郵箱。
if %errorlevel% == 0 exit
7-4 增長構建後操做
下拉選擇「Editable Email Notification」,進行發信設置。
按照如截圖方式進行,設置。
其中,部分Jenkins自帶變量,可進行發信內容選擇。
「Content Type」:下拉選擇「HTML」,內容包含HTML文件,可直接展現HMTL內容。
郵件主題標題內容輸入:$DEFAULT_SUBJECT:RunJmeter通知:接口測試腳本報錯-Build # $BUILD_NUMBER-$BUILD_STATUS!
在「Default content 」默認內容中輸入下以下,可發送包含Jmeter的結果html文件。其path路徑須要跟隨本身的進行更改。
$DEFAULT_CONTENT
<hr/>
(本郵件是程序自動下發的,請勿回覆)<br/><hr/>
項目名稱:RunJmeter <br/><hr/>
${FILE,path="Reports/ReportsHtml/JmeterTestReports.html"}
PS.注意觸發條件。以下圖。其餘的東西還能夠多看看。
至此文檔結束。