Jmeter之http測試及指令碼錄製
一、 什麼是jmeter
Jmeter是免費開源的效能測試工具(同時也可以用作功能測試,http協議debug工具).在如今越來越注重智慧財產權的今天, 公司越來越不願意冒著巨大的風險去使用盜版的商業效能測試工具. 但如果不使用盜版, 昂貴的License費用也不是每一箇中小型公司,甚至是大型公司願意投入的. 所以很多公司甚至還在鋌而走險的買少量的license,然後大範圍的使用.jmeter這個免費且好用的效能測試工具, 有足夠的理由成為是我們不二的選擇。
Jmeter是java語言編寫,開放原始碼。有了原始碼,使得我們可以更深入的分析一些問題。(比如響應時間等),這樣有助於我們更深刻理解效能測試,可以學習如何才能更精確的計量時間。商業軟體就沒有這個優點, 你想知道的東西,只能去看他們提供的文件,但文件並沒有程式碼更能說服人。
二、 Jmeter對比LoadRunner
描述 | LoadRunner | Jmeter |
---|---|---|
協議 | 支援HTTP、RTSP、SIP、Socket、JAVA自定義、媒體質量分析等 | Web - HTTP, HTTPS ,SOAP / REST,FTP,Database via JDBC,LDAP,Message-oriented middleware (MOM) via JMS,Mail - SMTP(S), POP3(S) and IMAP(S),Native commands or shell scripts,TCP |
指令碼錄製 | 支援,不支援讀取cap抓包檔案直接轉換為業務指令碼;場景如機頂盒業務 | 支援代理錄製,但不支援HTTPS;支援badboy錄製產生指令碼 |
UI介面 | 支援,指令碼錄製與編輯、場景控制,結果分析都介面化 | 支援,但不完善,功能少,不夠美觀 |
資源佔用 | 資源佔用率高 | 資源佔用較高 |
分散式測試 | 支援由單一控制器管理多個負載生成器 | 支援 |
併發模型 | 支援多種併發模型 | 併發模型單一 |
報告與分析 | 完善,支援生成HTML、Word報告 | 簡單圖表 |
資源監控 | 完善,支援SNMP收集資源指標 | 不支援 |
虛擬IP | 支援系統虛擬IP | 不支援 |
網速模擬 | 支援 | 不支援 |
擴充套件性 | 完善,附加的TSL或者C函式庫 | 開源,使用者可根據需求修改原始碼 |
三、 Jmeter的安裝及啟動
jmeter官網:http://jmeter.apache.org/
可以下載jmeter編譯好的壓縮包,windows下可以下載zip包,最新版本是jmeter3.0,要求java版本為7或更高版本,也可以下載老版本以支援較低版本的java,不過會無法體驗到新功能。
windows下解壓zip包,雙擊執行解壓縮目錄下\bin\jmeter.bat,則會啟動jmeter gui介面,如果不希望啟動gui介面可以指定引數。
linux下執行jmeter.sh可以啟動jmeter
以上方式是在jmeter目錄下執行,如果想全域性執行可以配置環境變數,配置方法:
桌面上 右鍵選中計算機—>屬性—>高階系統設定—>環境變數設定:
在“系統變數”—>“新建”, 在變數名中輸入:JMETER_HOME,變數值中輸入:jmeter解壓路徑 ,再修改CLASSPATH變數,變數值中新增%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar;% JMETER_HOME%\lib\jorphan.jar;%JMETER_HOME%\lib\logkit-1.2.jar; 然後確定即可
四、 建立http測試
這裡建立一個簡單的http測試,來熟悉jmeter如何進行http的效能測試
啟動jmeter
新增執行緒組
新增http請求取樣器
建立一個訪問bing的http請求
新增一個響應斷言,驗證請求是否正確
新增一個監聽器,檢視請求和相應結果
儲存測試指令碼
啟動測試,驗證結果
可以看到我們的請求和相應結果
重新設定一下相應斷言,再看一下響應結果
可以看到斷言失敗,因為我們的請求是成功的,而我們用斷言來判斷一個異常的響應狀態
五、 指令碼錄製
實際的測試場景中,如果手動新增每一個web(http/https)請求,費時又費力,而且有可能最後手動編寫的和實際發出的請求有出入。幸好jmeter自身可以錄製指令碼,或者通過其他工具生成jmeter指令碼,下面就介紹一下如何進行指令碼錄製。
錄製方法1:
通過jmeter自身設定就可以實現指令碼錄製:
建立一個執行緒組
建立http代理伺服器:
設定代理伺服器
設定IE瀏覽器:
注意埠號要與jmeter上的埠號一致
單擊jmeter上的”啟動”按鈕,開啟瀏覽器輸入要測試的網址,jmeter就會記錄你的操作:
啟動過程中會出現如下提示:
進行測試操作jmeter就會自動生成指令碼:
錄製方法2:
使用badboy進行錄製,首先要下載badboy安裝包:
badboy官網:http://www.badboy.com.au/
下載badboy並進行安裝
啟動badboy
點選紅色按鈕開始錄製,然後在位址列中輸入被測網址
錄製完成後點選黑色按鈕停止錄製
匯出生成jmeter指令碼
使用jmeter開啟剛剛錄製的指令碼
至此badboy的指令碼錄製已完成
相關推薦
Jmeter之http測試及指令碼錄製
一、 什麼是jmeter Jmeter是免費開源的效能測試工具(同時也可以用作功能測試,http協議debug工具).在如今越來越注重智慧財產權的今天, 公司越來越不願意冒著巨大的風險去使用盜版的商業效能測試工具. 但如果不使用盜版, 昂貴的License費
Shell之條件測試及shell批量建立使用者指令碼
文章目錄 條件表示式及邏輯表示式 檔案及目錄判斷 案例:備份資料庫中wordpress庫,每日凌晨開始,備份成功則郵件通知 數值比較 案例:r磁碟根`/`使用率,超
jmeter之介面測試(http介面測試)
基礎知識儲備 一、瞭解jmeter介面測試請求介面的原理 客戶端--傳送一個請求動作--伺服器響應--返回客戶端 客戶端--傳送一個請求動作--jmeter代理伺服器---伺服器--jmeter代理伺服器--伺服器 二、瞭解基礎介面知識: 1、什麼是介面:前端與後臺之間的橋樑、資料傳輸的通道,就是一
人生苦短之HTTP協議及Requests庫的方法
資源 view 新的 path python進階 教程 區別 lock load requests庫的主要方法:requests.request()構造一個請求 requests.get()獲取HTML網頁的主要方法,對應於HTTP的GE
壓測工具之JMeter之環境配置及運行
tar load col image 技術 down files inf apache 一、下載JMeter 地址:http://jmeter.apache.org/download_jmeter.cgi 系統:win7 x64 在 Binaries 目錄下選擇一個合適自己
Jmeter之壓力測試總結
bsp -s lin 壓力測試 在線 median 並發用戶 執行 strong 一、基本概念 1.線程組N:代表一定數量的並發用戶,所謂並發就是指同一時刻訪問發送請求的用戶。線程組就是模擬並發用戶訪問。 2.Ramp-Up Period(in seconds):建立所有線
學習筆記-Jmeter之HTTP請求預設值
轉自:https://www.cnblogs.com/ShadowXie/p/6008967.html 一、HTTP Request Defaults的作用: 該元件可以為我們的http請求設定預設的值。假如,我們建立一個測試計劃有很多個請求且都是傳送到相同的server,這時我
軟體測試_APP測試_效能測試_指令碼錄製_基本操作流程
這次主要是寫一下使用Loadrunner對APP進行效能測試的基本流程,有關效能測試監控指標請檢視連結:軟體測試_效能測試_關注點。 先決條件:已安裝Loadrunner。如未安裝,請檢視連結:軟體測試_測試工具_Loadrunner,進行安裝+破解+漢化的軟體安裝。 &nbs
jmeter進行http測試
1. 下載jmeter 2. 構建csv檔案 3. thread group 4. csv data set config a. filename:到csv目錄查詢 b.variable name:type,content c. 5. beanshell sam
Jmeter之效能測試TPS解析
1、獲得TPS外掛 2、新增後,記得使用排程器——每秒50個併發,持續60秒,觀察TPS 3、TPS,執行一次事務(包括請求、請求伺服器、等待伺服器返回等等,比如一個TPS事務,可能觸發3個QPS請求) PS:一秒鐘處理的事務數。TPS值越大,一秒鐘處理的事務
Jmeter之Http Cookie Manager
一、Http Cookie Manager的作用: 1、自動管理cookie:象瀏覽器一樣的儲存和傳送Cookie,如果傳送一個http請求他的響應中包含Cookie,那麼Cookie Manager就會自動地儲存這些Cookie並在所有後來發送到該站點的請求中使用這些
Jmeter 之資料庫測試
1、在需要測試計劃頁面,匯入資料庫驅動jar包。 2、線上程組下,新增資料庫連線配置控制元件:JDBC Connection Configuration 3、設定同步計時器的引數,用於併發使用 4、向資料庫表中插入資料
Jmeter——Jmeter之Websocket測試
一、Websocket是一種持久化連線,先通過http協議建立一次連線,在連線中通過websocket協議持續和伺服器進行互動,同時該協議存在被動性特點,服務端可以主動通知客戶端下面是具體抓包情況,可以
壓力測試三(Jmeter的簡單測試及常用檢視結果引數介紹)
(1)儲存方案 (2)建立執行緒組 執行緒組用來模擬使用者的併發訪問 執行緒組主要包含三個引數:執行緒數、準備時長(Ramp-Up Period(in seconds))、迴圈次數
Go語言HTTP測試及程式效能調優
這篇要講的東西,主要是HTTP,WebSocket的測試及如何調優Go程式的一些方法. 分下面幾個內容: 一.httptest測試包 二.效能測試 三.怎麼利用引數分析和調優程式四.在執行中實時監控調優 一.httptest測試包 對於HTTP和WebS
Jmeter之資料庫連線及請求
涉及到的Jmeter模組如下: JDBC Connection Configuration JDBC PreProcessor / JDBC Request Debug Sampler View Results Tree 前言 做介面測試時,經常碰到需要從資料庫中
Jmeter之HTTP Cookie 管理器
需要 cape 所有 cap 原始的 移動 就是 ignore implement Jmeter所支持的Cookie標準有很多,同時jmeter也提供兩組程序實現這些cookie標準,分別是httpclient3與httpclient4。http cookie 管理器中
Web系統性能測試實戰之指令碼錄製(基於JMeter)
鑑於Badbody已經不維護了,亟需一個替代方案。後發現Jmeter已自帶錄製工具,而且使用也很方便。 Jmeter配置 1、新增執行緒組(使用者組) Add > Threads(Users) > Thread Group 2、新增監聽控制器 Add
自動化測試工具TestWriter使用時遇到的指令碼錄製問題及解決方法
自動化測試工具TestWriter使用時遇到的指令碼錄製問題及解決方法如下,歡迎大家一起溝通交流~ 1Web 1.1如何使用瀏覽器除錯檢查Xpath 1) IE9及以上瀏覽器。在被測頁面按F12開啟開發人員工具,利用元素選擇工具在頁面定位指定元素; 2) Goog
jmeter設定HTTP代理,錄製APP指令碼
1.開啟jmeter,“工作臺”右鍵——“新增”——“非測試元件”——“HTTP代理伺服器” 2.設定埠號,手機需與這裡的埠號一致 3.新建執行緒組,“測試計劃”右鍵——“新增”——“Threads(Users)”——“執行緒組” 4.修改執行