1. 程式人生 > >Jenkins + Jmeter 構建介面、效能測試 (Windows平臺)

Jenkins + Jmeter 構建介面、效能測試 (Windows平臺)

Jenkins + Jmeter 構建介面、效能測試

  Jenkins + Jmeter 可以很輕鬆的進行打包釋出程式後自動進行介面冒煙測試,或者定時效能測試。以下是詳盡的Jenkins + Jmeter 安裝配置及建立一個任務。

目錄

1.JDK安裝

  • 下載JDK
  • 安裝JDK
  • 配置環境變數

下載JDK

安裝JDK

  下載的檔案是.exe安裝程式,雙擊或右鍵開啟安裝程式。
這裡寫圖片描述

  選擇你要安裝的路徑。
這裡寫圖片描述

  開始安裝。
這裡寫圖片描述

  如果安裝過程中彈出這個彈窗,注意看目標路徑是jre,可以直接關閉視窗。因為剛才安裝過程中已經安裝了jre了。
這裡寫圖片描述

  安裝完成。
這裡寫圖片描述

配置環境變數

  計算機-右鍵-屬性-高階系統設定-環境變數-新建
  變數名: JAVA_HOME, 變數值: 你的JDK安裝路徑
這裡寫圖片描述

  雙擊或點選編輯Path變數,變數值中在句首填入%JAVA_HOME%/bin;
這裡寫圖片描述

  在cmd中輸入java -version,如出現版本資訊則表示配置成功。
這裡寫圖片描述

2.Jmeter安裝

  • 下載Jmeter
  • 安裝配置Jmeter

下載Jmeter

安裝Jmeter

  下載的檔案是.zip解壓包格式,解壓到你本地磁碟中。
這裡寫圖片描述

  解壓出來的檔案無須安裝,直接可以使用。
這裡寫圖片描述

配置環境變數

  計算機-右鍵-屬性-高階系統設定-環境變數-新建
  變數名: JMETER_HOME, 變數值: 你的Jmeter安裝路徑
這裡寫圖片描述

  雙擊或點選編輯Path變數,變數值中在句首填入%JMETER_HOME%/bin;
這裡寫圖片描述

  在cmd中輸入jmeter -v,如出現版本資訊則表示配置成功。
這裡寫圖片描述

3. Jmeter外掛

  • Plugins Manager (外掛管理工具)
  • JMeterPlugins-Standard & ServerAgent (標準外掛包 & 監控資源率)

Plugins Manager (外掛管理工具)

  訪問官網,點選plugins manager.jar進行下載。
  官網地址: https://jmeter-plugins.org/downloads/all/
這裡寫圖片描述
  
  將.jar檔案放入jmeter安裝路徑/lib/ext路徑下。
這裡寫圖片描述

  重新啟動Jmeter.bat,在選項中可以進入Plugins Manager。
這裡寫圖片描述

  介面如下,可新增的外掛在Available Plugins選項中。
這裡寫圖片描述

JMeterPlugins-Standard (標準外掛包)

  除了在Plugins Manager中新增/更新外掛外,也可以直接在官網下載外掛包。
  訪問官網,點選JMeterPlugins-Standard-1.4.0.zip進行下載。
  官網地址: https://jmeter-plugins.org/downloads/old/
這裡寫圖片描述
  
  常規外掛包中有一個性能資源監聽器(PerfMon Metrics Collector),額外需要一個程式來監聽伺服器效能。
  訪問官網,點選ServerAgent-2.2.1.zip進行下載。
  官網地址: https://jmeter-plugins.org/wiki/PerfMonAgent/
這裡寫圖片描述

  下載的檔案是.zip解壓包格式,將2個解壓包都複製到你的Jmeter安裝路徑根目錄。
  其中,JMeterPlugins-Stantard-1.4.0.zip選擇解壓到當前檔案件。
  這裡寫圖片描述

  頁面提示確認檔案替換提示框,選擇全部選是。
這裡寫圖片描述

  其次,ServerAgent-2.2.1.zuo選擇解壓到檔案。(此程式為獨立程式,應該放在伺服器上,此處作為除錯用。)
這裡寫圖片描述

  ServerAgent資料夾內容如下,Windows上執行startAgent.bat/ Linux上執行startAgent.sh。
這裡寫圖片描述

4. Jmeter除錯

  • GUI執行測試
  • 非GUI執行測試

GUI執行測試

  將ServerAgent資料夾複製到伺服器上,執行startAgent.bat。
這裡寫圖片描述

  在測試機上執行Jmeter,新建一個指令碼(測試計劃)。
  {__P(,)}函式用於接收系統傳遞的引數,格式為:{__P(外部變數名,預設值)}。
這裡寫圖片描述

  新增一個執行緒組。
  對測試過程中需要變更的引數都可以使用${__P(,)}函式。
這裡寫圖片描述

  新增一個HTTP請求。
  HTTP請求用於向伺服器發出請求。
這裡寫圖片描述

  新增測試需要的常規監聽器,可以將測試結果寫入本地的檔案中。
  ${filePath}是測試計劃中我定義的變數,這裡用來指定存放測試結果的路徑。
這裡寫圖片描述

  如果是進行效能測試,幾乎都需要PerfMon Metrics Collector這個監聽器。
  在Host/IP中填入第一步中執行startAgent.bat的伺服器地址,埠預設是4444。
  這裡需要額外指定儲存檔案,因為該監聽器與其他監聽器儲存內容不一致。
這裡寫圖片描述

  點選執行按鈕,PerfMon Metrics Collector監聽器就可以看到伺服器資源情況了。(未儲存的指令碼執行會提示你儲存,本教程儲存為桌面\Demo\Demo.jmx)
這裡寫圖片描述

非GUI執行測試

  編寫一個.bat批處理檔案,用於快速啟動測試。
  以下2點特殊說明:
  1. Jmeter -J引數名=值 是用於給${__P(,)}傳參的命令
  2. java -jar CMDRunner.jar是外掛包中用於生成監聽器圖片的架包。
這裡寫圖片描述

  完整語句:

@echo off

rem 生成當前日期
set date=%date:~0,4%%date:~5,2%%date:~8,2%
if "%time:~0,2%" lss "10" (set hour=0%time:~1,1%) else (set hour=%time:~0,2%)
set time=%hour%%time:~3,2%%time:~6,2%
set d=%date%%time%
echo 當前時間: %d%

rem 配置地址
set jmxPath="C:\Users\test1\Desktop\Demo"
set jmeterPath="C:\Users\test1\Desktop\apache-jmeter-3.2"

rem 建立日期資料夾
mkdir %jmxPath%\%d%

rem 執行Jmeter
call jmeter -JfilePath="%jmxPath%\%d%" -JthreadNum=50 -JrampUp=5 -Jcycles=1 -n -t %jmxPath%\Demo.jmx -l %jmxPath%\result.jtl -e -o %jmxPath%\%d%\Report

rem 生成監聽器截圖
call java -jar %jmeterPath%\lib\ext\CMDRunner.jar --tool Reporter --generate-png %jmxPath%\%d%\ResponseTimesOverTime.png --input-jtl %jmxPath%\%d%\result.jtl --plugin-type ResponseTimesOverTime
call java -jar %jmeterPath%\lib\ext\CMDRunner.jar --tool Reporter --generate-png %jmxPath%\%d%\CPUMemory.png --input-jtl %jmxPath%\%d%\CPUMemory.jtl --plugin-type PerfMon

rem 剪下日誌
move jmeter.log %jmxPath%\%d%

rem pause

  儲存為run.bat
這裡寫圖片描述

  雙擊或右鍵開啟run.bat,即可以執行測試。
這裡寫圖片描述

  run.bat中生成了一個日期格式的資料夾,並把路徑通過-JfilePath傳給了Jmeter;Jmeter通過${__P(filePath,預設值)}獲取到路徑,用於儲存監聽器結果。
這裡寫圖片描述

  Report資料夾是通過 -e -o .\Report 生成的。是JMeter3.0新增的圖表型HTML報告。
這裡寫圖片描述

  監聽器中儲存的2份jtl檔案,可以呼叫CMDRunner.jar,直接轉成png,無需開啟GUI介面匯入。
這裡寫圖片描述

5. 安裝Jenkins

  • Jenkins下載
  • Jenkins安裝

Jenkins下載

Jenkins安裝

  下載的檔案是.zip解壓包格式,解壓到你本地磁碟中。
這裡寫圖片描述

  解壓出來的檔案是jenkins.msi安裝程式,雙擊或右鍵開啟安裝程式。
這裡寫圖片描述

  選擇你要安裝的路徑。
這裡寫圖片描述

  不斷下一步,直到開始安裝。
這裡寫圖片描述

  安裝完成後會自動開啟瀏覽器,訪問Jenkins本地地址,預設埠8080。
這裡寫圖片描述
  
  根據頁面提供的路徑,找到initialAdminPassword檔案,裡面就是初始密碼。
這裡寫圖片描述

  根據需求選擇建議安裝還是自定義安裝。本教程選擇前者。
這裡寫圖片描述
  
  開始安裝,等待安裝完成。
這裡寫圖片描述

  建立管理員使用者,填入你想建立的帳密。
這裡寫圖片描述

  安裝完成。
這裡寫圖片描述
  
  歡迎使用Jenkins!
這裡寫圖片描述

6. Jenkins外掛

  • performance Plugin (效能外掛)

Performance Plguin (效能外掛)

  點選系統管理-管理外掛。
這裡寫圖片描述

  選擇可選外掛,目前未安裝的外掛在該選項中。
這裡寫圖片描述

  搜尋”Performance Plguin”,找到該外掛,勾選後點選直接安裝。
這裡寫圖片描述

  等待安裝完成。
這裡寫圖片描述

7. Jenkins新增任務

  • 新增自由風格軟體專案

新增自由風格軟體專案

  點選新建,填入任務名,選擇構建一個自由風格的軟體專案,點選OK。
這裡寫圖片描述

  點選增加構建步驟,選擇Execute Windows batch command。(Windows平臺)
這裡寫圖片描述
  將5. 除錯中寫好的run.bat內容複製進命令框中。
  如果需要用到之前新增的Performance Plguin外掛,需要將result.jtl輸出到Jenkins的workspace路徑中。(圖中在紅線處更改相應部分)
這裡寫圖片描述

  點選增加構建後操作步驟,選擇Performance Plguin。
這裡寫圖片描述

  在Source data files處,填入”*/.jtl”。
這裡寫圖片描述

  回到上方,找到構建環境,勾選Delete workspace before build starts。
  目的是每次執行都會生成result.jtl,如果生成路徑已存在同名檔案會導致錯誤。
這裡寫圖片描述

  當完成需要的設定後,點選儲存按鈕,回到任務頁面。
這裡寫圖片描述

  點選立即構建,Jenkins就開始執行剛才填入的批處理語句,然後生成右側的效能結果概覽,並且每次執行都會清除工作區內容。
這裡寫圖片描述

8. Jenkins其他外掛

  • Build With Parameters (構建時傳入引數)
  • Groovy Postbuild

Build With Parameters (構建時傳入引數)

  系統管理-管理外掛-可選外掛
  搜尋Build With Parameters找到該外掛,勾選後點選直接安裝。
這裡寫圖片描述

  等待安裝完成。
這裡寫圖片描述

  回到首頁,對7. 新增任務中建立的任務進行配置。
這裡寫圖片描述

  General中新增了引數化構建過程複選框,勾選該複選框。
這裡寫圖片描述

  點選新增引數下拉框,選擇String Parameter選項。
這裡寫圖片描述

  新增指令碼需要傳入的引數及預設值,這裡選擇了執行緒數、啟動時間和迴圈次數。
這裡寫圖片描述

  構建步驟中,需要傳入的值用上一步驟設定的引數名填入,格式為%引數名%。
這裡寫圖片描述

  儲存後,在任務頁面的”立即構建”變為了”Build with Parameters”。
這裡寫圖片描述

  點選Build with Parameters,在構建任務前,Jenkins會先讓你填入引數值。
這裡寫圖片描述

  填入預期的值或直接使用預設值,點選開始構建即可開始執行任務。
這裡寫圖片描述

Groovy Postbuild

  系統管理-管理外掛-可選外掛
  搜尋Groovy Postbuild找到該外掛,勾選後點選直接安裝。
這裡寫圖片描述

  點選增加構建後操作步驟,選擇Groovy Postbuild。
這裡寫圖片描述
  
  在Groovy Script框中輸入用於在構建列表顯示內容的程式碼。

def threadNum = manager.build.buildVariables.get("threadNum")
manager.addShortText("thread: " + threadNum)

這裡寫圖片描述

  構建一下,看一下效果吧。
這裡寫圖片描述

  可以看到構建列表中,顯示了這次構建時的執行緒數為50。
這裡寫圖片描述

9. 結語

  Jenkins非常的方便用於執行一系列任務,可以為測試人員完成很多工作。而Jmeter小巧強大,我常使用它代替postman、HttpRequester等工具。本人還處於初學階段,我能想到的有很多,仍需要去摸索和思考很多東西。例如:以持續整合思想可以設定job1用於打包釋出,job2自動在job1完成時進行介面測試。那麼重點就是jmx指令碼的編寫上,需要有業務邏輯,並且資料能夠迴圈使用。這是我下一步需要結合工作中的專案切身去思考的東西。

相關推薦

Jenkins + Jmeter 構建介面效能測試 (Windows平臺)

Jenkins + Jmeter 構建介面、效能測試   Jenkins + Jmeter 可以很輕鬆的進行打包釋出程式後自動進行介面冒煙測試,或者定時效能測試。以下是詳盡的Jenkins + Jmeter 安裝配置及建立一個任務。 目錄

JMeter全程實戰效能測試實戰分散式效能測試真實案例分析

測試需求描述 1、 本次測試的介面為http服務端介面 2、 介面的主要分成兩類,一類提供給查詢功能介面,一類提供儲存資料功能介面,這裡我們舉例2個儲存資料的介面,因為這兩個介面有關聯 性,比較有代表性; 儲存信用卡賬戶資訊介面: 傳入引數: args={ "clientNo":"43434

Docker+Jmeter+InfluxDB+Grafana搭建效能測試監控平臺

搭建需求? jmeter自身的聚合測試報告視覺化效果極差,為更加形象的、動態的展示測試過程,需要一個具有時序性的可視區來展示給我們的測試者, 這時候就需要用到後端監控,下面我們來開始搭建符合這種測試需求的測試平臺 此次測試平臺基於阿里雲進行搭建,具體的環境讀者可自行選擇,例如centos或者readhat &

Jmeter+jenkins如何快速搭建介面效能測試持續整合解決方案-[基於windows篇]

  Jenkins + Jmeter 構建介面、效能測試持續整合解決方案   Jenkins + Jmeter 可以很輕鬆的進行打包釋出程式後自動進行介面冒煙測試,或者定時效能測試。以下是詳盡的Jenkins + Jmeter

Jmeter介面測試效能測試詳細介紹

下面主要就是講一下Jmeter工具的用法,用法非常簡單,比起loadrunner不知道簡單多少,並且開源免費~~ 1、介面簡介 介面定義 介面:     就是資料互動的入口和出口,是一套標準規範。   介面(硬體類介面)     是指同一計算機不同功能層之間的

JMeter深入進階效能測試體系,介面效能測試,各領域企業實戰

jmeter是apache公司基於java開發的一款開源壓力測試工具,體積小,功能全,使用方便,是一個比較輕量級的測試工具,使用起來非常簡單。因為jmeter是java開發的,所以執行的時候必須先要安裝jdk才可以。jmeter是免安裝的,拿到安裝包之後直接解壓就可以使用,同時它在linux/windows/

JMeter介面&效能測試

JMeter介面測試 目前最新版本發展到5.0版本,需要Java7以上版本環境,下載解壓目錄後,進入\apache-jmeter-5.0\bin\,雙擊ApacheJMeter.jar檔案啟動JMemter。 1、建立測試任務 新增執行緒組,右擊測試計劃,在快捷選單單擊新增-》執行緒(使用者)-》執行緒

jenkins+jmeter+maven介面自動化測試框架搭建【maven專案建立】

一、jmeter指令碼錄製或編寫        根據自己習慣錄製或編寫jmeter指令碼,保證指令碼可正確執行。 二、用eclipse建立maven專案 1.File->New->Project...開啟new project視窗(如下圖), 2.選擇

jenkins+jmeter+maven介面自動化測試框架搭建【HTML 報告展示】

1.maven專案中建立/src/jmeter/resources路徑,將jmeter中的extras路徑下如下模板檔案複製到maven專案中的/src/jmeter/resources路徑下(也可以根據自己的需要下載其他目標放在這個路徑下即可) 2.pom檔案中新

Jenkins+Jmeter+ant介面自動化整合

一、準備工作 Jmeter下載地址:http://jmeter.apache.org/download_jmeter.cgi Ant下載地址:https://ant.apache.org/bindownload.cgi Jenkins下載地址:https://jenkins.io/downl

效能測試監控平臺:InfluxDB+Grafana+Jmeter linux環境執行jmeter並生成報告 時序資料庫InfluxDB:簡介及安裝 視覺化工具Grafana:簡介及安裝

前面的部落格介紹了InfluxDB、Telegraf、Grafana的安裝和使用方法,這篇部落格,介紹下如何利用這些開源工具搭建效能測試監控平臺。。。   前言 效能測試工具jmeter自帶的監視器對效能測試結果的實時展示,在Windows系統下的GUI模式執行,渲染和效果不是太好,在linu

對非同步處理的http介面進行效能測試

對非同步處理的http介面進行效能測試 以前對介面做效能測試,介面都是同步處理的,請求之後等待響應結果就知道處理結果了,這樣只要看這個介面是否異常,如果無異常無報錯記錄這個介面的響應時間、TPS等效能指標進行分析就可以了,最近在工作中遇到了非同步處理的介面,邏輯是隻要你請求引數全部合法,即返回成

系統吞吐量(TPS)使用者併發量效能測試概念和公式【轉】

PS:下面是效能測試的主要概念和計算公式,記錄下: 原文傳送門 一.系統吞度量要素: 一個系統的吞度量(承壓能力)與request對CPU的消耗、外部介面、IO等等緊密關聯。 單個reqeust 對CPU消耗越高,外部系統介面、IO影響速度越慢,系統吞吐能力越低,反之越高。

JMeter 深入進階效能測試進階案例實戰

第1章 效能測試整體認知 瞭解效能測試的目的,想做好效能測試都需要掌握哪些方面的技能(開發語言、作業系統、網路、工具等)。效能測試、穩定性、壓力、疲勞、容量預估、多併發邏輯。掌握如何開始效能測試,並且掌握在效能測試中每個部分的工作重點,瞭解軟體架構、監控部署、指令碼準備、場景設定及知道為什麼需要做這些。掌握:

JMeter效能測試進階案例實戰 JMeter 深入進階效能測試體系 各領域企業實戰

課程簡介: 通過本課程的學習,能夠掌握目前最流行、最實用的效能測試的技術方案,能夠獨立完成效能測試,亦能夠帶領團隊解決企業級效能問題。 學習本課程前,希望你已具備JAVA語言基礎,至少熟悉Java的語法及特性,最好自己寫過一點程式碼,對MySQL、Linux基礎知識有 一定的瞭解,本

效能測試的八大類--轉載

1、簡述效能測試的八大類,並對這八大類進行描述。 答:效能測試八大類包括:效能測試、負載測試、壓力測試、配置測試、併發測試、容量測試、可靠性測試、失敗測試。       效能測試:效能測試是為了描述測試物件與效能相關的特徵並對其進行評價而實施和執行的一類測試。它主要通過自動化

jmeter初級學習一效能測試初接觸------《JMeter實戰》

技術要求 測試工具:JMeter、LoadRunner 測試基礎 :效能測試理論、自動化測試理論、測試開發 伺服器效能診斷:CPU、磁碟、記憶體、網路 優化技能:程式碼、架構、中介軟體、作業系統、資料庫(SQL、配置、設計) 協議:http/https、We

系統吞吐量(TPS)使用者併發量效能測試概念和公式

系統的吞吐量與請求對CPU的消耗,伺服器記憶體使用,IO等都有關係。 系統吞吐量幾個重要引數:QPS(TPS)、併發數、響應時間 QPS(TPS):每秒處理的請求數 併發數:同時處理的請求數 響應時間:平均響應時間 三者的關係:QPS(TPS)=併發數/平均響應

Postman介面&效能測試

Postman介面測試例項  Postman是一款功能強大的網頁除錯與傳送網頁HTTP請求的Chrome外掛。它提供功能強大的 Web API & HTTP 請求除錯。 1、環境變數和全域性變數設定 環境變數可以使用在以下地方: URL URL params Hea

系統吞吐量TPS(QPS)使用者併發量效能測試概念和公式

PS:下面是效能測試的主要概念和計算公式,記錄下: 一.系統吞度量要素:   一個系統的吞度量(承壓能力)與request對CPU的消耗、外部介面、IO等等緊密關聯。單個reqeust 對CPU消耗越高,外部系統介面、IO影響速度越慢,系統吞吐能力越低,反之越高。 系統