實用測試技能分享:jmeter+Jenkins效能測試自動化搭建
這階段有幸接手了公司新產品的測試,所以一直都很忙。後臺收到一些同學的私信,想多瞭解下效能測試,正好閒暇之餘,終於有時間總結了一些效能測試實踐經驗和測試過程,就跟大家聊一聊。
效能測試用來保證產品釋出後系統的效能滿足使用者需求,在軟體質量保證中起著重要作用。效能測試,我首選的工具是JMeter,而且不得不說JMeter也是一款非常好的介面測試工具。
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使配置生效,很簡單。
2、安裝Jenkins
wget -O /etc/yum.repos.d/jenkins.repo
yum install Jenkins
啟動service jenkins start
利用ip:port訪問,進入Jenkins首頁進行相應配置。
預設埠8080、主目錄路徑/usr/lib。
3、在Jenkins上新建節點機
節點機即壓測機,即你要用哪臺機器跑你的job。
首先安裝ssh plugin外掛;
然後新增一個根據使用者名稱密碼登入的credentials許可權認證
最後就是配置節點,主要涉及配置jdk目錄。
4、Jenkins上安裝效能外掛
主要是安裝HTML reports和performance test result report外掛
下載2個Jenkins外掛,安裝即可。
5、新建job
核心的內容如下
選擇剛才的節點機為執行的機器,構建行為採用shell命令,構建後新增html report和performance trend。
6、驗證結果
最後的效果如下。
可以看到豐富的html報告結果;
可以橫向比較每個版本的效能基線;
ps:搭建jmeter效能測試自動化過程中遇到問題記錄。
問題:
Jenkins無法展示效能測試的html結果
解決方法:
修改Content Security Policy的預設配置,進入ManageJenkins->Script console,輸入如下命令並進行執行。
總結:
截止目前,jmeter+Jenkins效能測試自動化搭建已經完成,如果需要你也可以使用Ant整合。這個過程依然存在很多的不足,我會繼續努力爭取以後分享更多有價值的乾貨。古人云"The more we share, the more we have",將分享進行到底...
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31407649/viewspace-2375305/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 功能測試、自動化測試、效能測試的區別
- 測試開發技能:JMeter高階教程——效能測試與自動化雲監控JMeter
- 介面自動化測試工程實踐分享
- 搭建自動化測試環境
- 自動化測試系列 —— UI自動化測試UI
- 用python實現selenium 自動化測試Python
- PerfDog 助力自動化效能測試探索
- Docker與自動化測試及其測試實踐Docker
- 測試面試題集錦(五)| 自動化測試與效能測試篇(附答案)面試題
- 自動化測試 selenium 環境搭建
- Web自動化-Selenium自動化測試-4-編寫測試用例Web
- 軟體測試:自動化測試
- 【自動化測試入門】自動化測試思維
- 實用測試技能分享:APP壓力穩定性測試之Monkey入門實戰APP
- 採用自動化測試的情形及自動化測試的優缺點
- 自動化測試實戰技巧:「用例失敗重試機制」實現方案分享
- 自動化測試:Monkey工具實踐應用~
- 介面測試框架接入效能測試實踐分享框架
- API自動化測試實踐API
- UI自動化測試實戰UI
- [原創] 上海招聘高階測試工程師(效能測試/自動化測試/App測試),長期有效工程師APP
- 小程式自動化測試--測試3
- 手工測試和自動化測試 BattleBAT
- 自動化測試系列(三)|UI測試UI
- API自動化測試平臺,高效實現對API的自動化測試API
- AutoRunner 功能自動化測試專案實訓之自動化測試原理(一)
- 介面自動化測試框架搭建的思路框架
- 介面自動化測試框架搭建總結框架
- Python實現效能自動化測試竟然如此簡單Python
- Web自動化測試 —— 測試環境搭建 (Selenium+Python) Windows篇WebPythonWindows
- 如何學習自動化測試?從手工測試到自動化測試的過程…
- 手工測試用例與自動化測試用例的區別
- 各位測試大佬可有實用的介面自動化測試平臺推薦?
- 自動化裝置測試與自動化測試的區別
- 如何做自動化測試?什麼是自動化測試?
- 自動化測試進階課程——Selenium自動化測試通關實戰班
- python 桌面應用自動化測試Python
- 自動化測試面試點面試