實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

這階段有幸接手了公司新產品的測試,所以一直都很忙。後臺收到一些同學的私信,想多瞭解下性能測試,正好閒暇之餘,終於有時間總結了一些性能測試實踐經驗和測試過程,就跟大家聊一聊。

性能測試用來保證產品發佈後系統的性能滿足用戶需求,在軟件質量保證中起著重要作用。性能測試,我首選的工具是JMeter,而且不得不說JMeter也是一款非常好的接口測試工具。

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

Jmeter應用領域

JMeter是Apache組織開發的基於Java的性能測試工具。用於對軟件做壓力測試,它最初被設計用於Web應用測試但後來擴展到其他測試領域

1.可用於壓力測試及性能測試,數據庫測試,Java程序的測試,HTTP及FTP測試,Web Service測試等等

2.可用於對靜態的和動態的資源(文件,Servlet,Perl腳本,java 對象,數據庫和查詢,FTP服務器等等)的性能進行測試

3.可用於對服務器、網絡或對象模擬巨大的負載,來在不同壓力類別下測試它們的 強度和分析整體性能

4.可用於對應用程序做功能/迴歸測試,通過創建帶有斷言的腳本來驗證你的程序返回了你期望的結果

Jmeter雖然是一款廣泛使用的性能測試工具,然而,在執行測試前,用戶往往需要花費很多額外的精力和時間配置測試環境。

同時在進行測試時,使用單臺服務器模擬數以千計的用戶對目標服務器產生負載,受限於服務器的性能可能無法滿足需求,這就需要一個多臺服務器的分佈式的併發的測試環境。

因此就需要一個基於Jmeter和Jenkins的自動化性能測試來解決以上問題。

框架介紹

首先用jmeter錄製或者書寫性能測試的腳本,用maven添加相關依賴,把性能測試的代碼提交到github,在jenkins配置git下載性能測試的代碼,配置運行腳本和測試報告,配置運行失敗自動發郵件通知,這樣一來性能測試的job配置完成。

接著,把性能測試的job配置成開發job的下游job,一旦開發有了新的代碼提交運行開發自己的job後,就會自動觸發我們性能測試的job。這樣我們就實現了接口性能測試的全自動化,我們只需要關注測試失敗的郵件!

1、安裝java、maven

首先在遠程的壓測機上安裝java、maven

解壓縮相應的tar包

配置/etc/profile路徑

Source /etc/profile使配置生效,很簡單。

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

2、安裝Jenkins

wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo

rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key

yum install Jenkins

啟動service jenkins start

利用ip:port訪問,進入Jenkins首頁進行相應配置。

默認端口8080、主目錄路徑/usr/lib。

3、在Jenkins上新建節點機

節點機即壓測機,即你要用哪臺機器跑你的job。

首先安裝ssh plugin插件;

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

然後新增一個根據用戶名密碼登錄的credentials權限認證

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

最後就是配置節點,主要涉及配置jdk目錄。

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

4、Jenkins上安裝性能插件

主要是安裝HTML reports和performance test result report插件

下載2個Jenkins插件,安裝即可。

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

5、新建job

核心的內容如下

選擇剛才的節點機為執行的機器,構建行為採用shell命令,構建後添加html report和performance trend。

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

6、驗證結果

最後的效果如下。

可以看到豐富的html報告結果;

可以橫向比較每個版本的性能基線;

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

ps:搭建jmeter性能測試自動化過程中遇到問題記錄。

問題:

Jenkins無法展示性能測試的html結果

解決方法:

修改Content Security Policy的默認配置,進入ManageJenkins->Script console,輸入如下命令並進行執行。

實用測試技能分享:jmeter+Jenkins性能測試自動化搭建

總結:

截止目前,jmeter+Jenkins性能測試自動化搭建已經完成,如果需要你也可以使用Ant集成。這個過程依然存在很多的不足,我會繼續努力爭取以後分享更多有價值的乾貨。古人云"The more we share, the more we have",將分享進行到底...


分享到:


相關文章: