jmeter腳本的編寫

前幾天講到了性能測試的入門,今日繼續來講解jmeter的使用,本文講的都是比較細,希望各位耐心的看完。

一、jmeter的安裝與打開

前提條件:給大家一個jmeter的安裝包  百度網盤的路徑如下:鏈接:https://pan.baidu.com/s/1Wu0pJHqeYv6pj67Fv3s3tw   提取碼:7r5V 

安裝jdk(建議1.8)  jdk-->java開發工具包  注意:一臺電腦是允許安裝多個jdk的,如何確認安裝完好?cmd中,輸入java -version,即可看到1.8

jmeter是開源免費的,所以只需要把壓縮包解壓即可使用,不需要過多的安裝手續

啓動jemter,如何啓動?

會出現如下圖的東西,不要急,稍等幾秒鐘會有東西出來

 

進入界面,這個圖形界面叫做GUI

 

注意:原來的黑屏的那個小窗口,不要叉掉,切記切記

如果,你是mac電腦,也可以點擊其他的兩個文件啓動

 二、jmter的使用以及目錄介紹

2.1 語言的切換

第一次解壓,打開進入jmeter,默認是英文,其實從jmeter.log的日誌文檔中也可以看出來。比如,現在打開jmeter.log,第一行就看的到

那如果,你想把自己的jmeter變成中文版,怎麼辦呢?有兩種辦法;看你是想僅一次顯示中文,還是想永久顯示中文。

如果你想暫時這一次顯示中文,怎麼理解這句話呢?比如你此時設置成中文,關閉後,再次打開,還是顯示英文,因爲系統默認的就是英文

步驟:在jmeter中選擇options--->choose language--->Chinese

 

如果你想永久的顯示,不管什麼時候打開,都顯示中文,相當於“一考定終生”;步驟:去修改配置文件:jmeter.properties

建議在學習階段:用中文來學習,至少看的懂字

2.2 Jmeter默認保存的文件路徑在bin文件夾

比如:你剛剛弄完一個腳本,點擊保存

當然,你也可以把腳本放在其他路徑下,只不過,當你第一時間不記得自己放在哪裏時,可以去bin目錄下找找,試一下能不能找的到,也許因爲某個時間點,你自己就無意間自動ctrl+s了,自己保存了都不知道

2.3 jmeter的文件目錄

bin文件夾:jmeter的啓動,配置文件、以及默認保存腳本(.jmx格式)等等
docs文件夾:放的是文檔,裏面有一些api,css,images等,api裏面的一些接口文檔可以進行二次開發
extras文件夾:這個是在持續集成時用的上
lib文件夾:裏面放一些源碼包,放一堆jar包;如果你對jmeter二次開發生成的jar包,就要放在這個lib路徑下,如果你用的是第三方包,就要放在lib--->ext文件夾下
printable_docs文件夾:文檔文件,放的是jmeter的幫助文檔,但是這與官網的幫助文檔不一樣,有差別;
            本地的這份從文件夾裏面打開的幫助文檔,是離線文檔,僅適合當前版本;
            在GUi界面中打開的幫助手冊,那是官方文檔,是最新的文檔,有可能會與當前版本不一致,個別功能存在差異

 2.4 jmeter的使用

一個完整的jmeter腳本,一般會包含 線程組+取樣器+監聽器

取樣器:根據不同的接口協議,有不同的取樣器

監聽器:展示取樣結果   不同的監聽器從不同的角度展示取樣結果

配置元件的優先級最高,是最先被執行的,此時我添加一個配置元件

那麼執行順序就是:

接下來,演示前程貸項目的註冊接口,先打個樣;前提條件:先拿到接口文檔,知道接口的路徑;填入參數和服務器等信息

 

 

啓動:

 

保存:

 

注意:Ping 不通不代表網絡不通,Ping 的通也不代表網絡通;所以,我們一般用telnet指令,因爲有的服務器是禁ping的

三、注意事項

3.1 服務器IP的填寫

也可以填寫域名,www.baidu.com    

絕對不能寫斜槓www.baidu.com/ 此種寫法錯誤  也不能寫前綴http:www.baidu.com

http協議默認端口80  80端口可以不寫的,比如我剛剛在請求百度時,就沒寫

那麼我們慢慢來看,之前請求的一個註冊接口

 

查看結果樹,顯示註冊成功,但,在寫服務器ip

爲什麼呢?這個服務器IP相當於一個地址,端口號相當於一個門牌號,路徑就是具體根據線路找到某個房間。但是,你如果在路徑框裏還寫服務器IP,那麼就好比你已經進入了大門,本來馬上要找對應的房間,結果又重新搜索哪個社區,哪個單元,有的繞路了

3.2 編碼 utf-8

在http請求中- - -》內容編碼只對請求體(request body)有效,對response body(響應體)無效

那麼,請求百度網站,響應的亂碼怎麼來的呢?

因爲jmeter的所有展示信息頁面的編碼,默認都是根據系統編碼來的;現在windows系統的編碼默認爲gbk編碼。不一樣,所以要修改

如何修改呢?去配置文件jmeter.properties文件中修改,修改完後,把jmeter關閉再重啓即可看到

 

 注意:Jmeter的配置文件被修改,需要重啓jmeter才能生效

問:以後所有的都改爲utf-8的編碼格式嗎?

答:不一定要都改成utf-8,這個需要看返回的數據的要求格式是什麼,有的是utf-8,有的是GBK,有的是gb2312,有的是BIG5;所以也不絕對

3.3 編碼怎麼用

當請求格式爲參數時,請求的參數值中有 中文或者特殊符號時, 請求一定勾選“編碼”,如果不勾選,要麼直接報錯,要麼數據中的該字段顯示亂碼

另外,還有個建議:無論什麼時候,這個編碼最好都要勾選上,防止出錯

3.4 消息頭管理器中的Content-Type

charset是隻能作用請求部分

四、錄製腳本

1、怎麼來錄製腳本
  http代理服務器錄製腳本
    1.新建線程組
    2.添加http代理服務器 非測試元件
    3.http代理服務器修改,端口、目標控制器、請求過濾器

點擊啓動,爲什麼報錯?沒有修改目標控制器

修改之後,再次啓動,會出現正確信息

 

這個出現的小彈窗,不用管,也不要叉掉,這個你要是叉掉了,那在網頁中點擊錄製腳本,就無效

因此,修改端口:8899;修改目標控制器 線程組2 ;再修改請求過濾器,添加建議排除

打開電腦本地的代理

 保存之後,在瀏覽器中訪問:www.lenmoban.com(任意一個網址都行,我這裏只是隨便舉個例子)

就錄製好了腳本

其實,jmeter初步使用起來,比較簡單,流程均差不多;因此,我們可以總結一下jmeter工具使用的大致步驟:
1.添加線程組、取樣器、監聽器
2、取樣器一般有http請求:填入服務器IP、端口號、請求方式、路徑、傳參(注意:編碼小方框裏均打勾勾選上)、消息頭管理器填入Content-Type類型
3、查看結果樹,查看響應數據,如果有亂碼,就去配置文件改成相對應的編碼方式

  前提條件:你已經在windows上裝好了jmeter,且jdk版本是1.8;
       你已經拿到了接口文檔,知道路徑和要傳的參數;
       如果沒有詳細的接口文檔,那就去抓包,抓包方式有幾下幾種:瀏覽器F12,Fiddler,wireshark 等等;
       再不行,直接找開發人員要

而通過jmeter錄製腳本,靠的是代理服務器,有的測試人員想偷懶或者要請求的接口實在太多,才用這種錄製的方式,一般都是前一種自己手動添加,爲什麼?
因爲,你輸入一個URL,錄製到jmeter工具中,發現線程組中,其實很多的其他的都要刪掉,真正你需要用到的,就那麼幾個,所以有的時候還不如自己手動添加

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章