JMeter 安裝及入門(Ubuntu)
1、安裝 Java8
將Linux版的jdk的安裝包配置到環境變量即可,很簡單方便 oracle現在開始收費了,下載jdk8 的時候需要登錄,最好下載一個jdk保存着,否則忘記賬號很麻煩
獲取安裝包
- 方法1:從網上找一個jdk8的tar.gz包,上傳到Ubuntu
- 方法2:或者從網上找到下載jdk8的Linux版本的鏈接,使用
wget 下載鏈接
,將jdk下載到當前目錄
鏈接:https://pan.baidu.com/s/1X2NZFSDyKtOJDBGtIvck2g 提取碼:xz6u
解壓安裝包到指定位置
sudo tar –zxvf jdk-xxx.tar.gz –C /usr/local/ # 位置看個人習慣
修改配置環境
# 打開文件
sudo gedit /etc/profile
# 設置環境變量
JAVA_HOME=/usr/local/jdk解壓的文件夾
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
重新加載/etc/profile
配置文件
source /etc/profile
查看java版本
java -version
2、安裝 JMeter
鏈接:https://pan.baidu.com/s/1FvL_6_YGF0pa6T1sEehE5g 提取碼:vxbs
解壓壓縮包
sudo tar -zxvf apache-jmeter-x.x.x.tgz –C /usr/local/
配置Jmeter環境變量
sudo gedit /etc/profile
再添加如下變量
export JMETER=/usr/local/apache-jmeter-x.x.x
export PATH=$JMETER/bin:$PATH
執行命令,配置的環境變量生效
source /etc/profile
檢查安裝結果:
jmeter -v
Jul 15, 2021 10:59:44 PM java.util.prefs.FileSystemPreferences$1 run
INFO: Created user preferences directory.
_ ____ _ ____ _ _ _____ _ __ __ _____ _____ _____ ____
/ \ | _ \ / \ / ___| | | | ____| | | \/ | ____|_ _| ____| _ \
/ _ \ | |_) / _ \| | | |_| | _| _ | | |\/| | _| | | | _| | |_) |
/ ___ \| __/ ___ \ |___| _ | |___ | |_| | | | | |___ | | | |___| _ <
/_/ \_\_| /_/ \_\____|_| |_|_____| \___/|_| |_|_____| |_| |_____|_| \_\ 5.4.1
Copyright (c) 1999-2021 The Apache Software Foundation
運行:
jmeter
3、入門教程
添加線程組(thread group)
線程組里主要的屬性:
- Number of Threads(users):線程數,也叫並發數
- Ramp-up period(seconds):多少時間啟動所有線程
- Loop Count:迭代數
注意:一般單機不建議跑太高的線程數,建議在50內。
添加 http 請求
常用屬性:
- HTTP Request:設置 http method 和 path(url)
- Paramters:請求參數,即Url參數
- Body Data:請求體數據。對於 api,一般添加 json 數據
- Files Upload:文件上傳。測試上傳文件時使用
添加 http 請求頭
除了 http 請求的一些常規屬性,有時需要通過 header 傳數據。
在線程組右鍵,”添加(Add)“ -> ”配置元素(Config Element)“ -> ”Http Header管理器(Http Header Management)“
同理,Cookie、Cache 等也一樣操作。
添加斷言
斷言即判斷預期和實際是否一致,JMeter 提供多種斷言:Response Assertion、JSON Assertion、HTML Assertion等。
對於 api 測試,一般使用 JSON Assertion,因為返回的結果是 JSON。
在某個 Http 請求上右鍵,”Add“ -> ”Assertion“ -> ”JSON Assertion“
- Assert JSON Path exists:要驗證的json的路徑,這里是 $.success
- Additionally assert value:是否驗證值
- Match as regular expression:是否使用正則匹配
- Expected value:預期值。這里是 true
json path:
json path示例:
{
"store": {
"book": [
{ "category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{ "category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
},
{ "category": "fiction",
"author": "Herman Melville",
"title": "Moby Dick",
"isbn": "0-553-21311-3",
"price": 8.99
},
{ "category": "fiction",
"author": "J. R. R. Tolkien",
"title": "The Lord of the Rings",
"isbn": "0-395-19395-8",
"price": 22.99
}
],
"bicycle": {
"color": "red",
"price": 19.95
}
}
}
添加測試結果
最后要查看測試結果,在線程組右鍵:”Add“ -> ”Listener“ -> ”View Results Tree“