一、jmeter查看結果樹亂碼
(1)在jmeter的bin目錄下找到jmeter.properties這個文件,添加上
sampleresult.default.encoding=utf-8
(2)重啓jmeter
二、jmeter body data裏面有亂碼怎麼解決
(1)在jmeter的bin目錄下找到jmeter.properties這個文件,添加上
jsyntaxtextarea.font.family=Hack
(2)重啓jmeter
2、使用jmeter作接口測試
測試接口以前,得有一個接口文檔。咱們用如下接口文檔來說解:
帳號:xiaohei
密碼:123456
打開jmeter,依次添加:線程組、HTTP請求、查看結果樹
一、請求方式:get
範例:獲取學生信息接口
二、請求方式:post
範例:登陸接口
三、請求方式:post,入參是json類型
範例:添加學生信息接口
四、添加cookie
範例:學生金幣充值
五、如何添加header信息
範例:獲取全部學生信息
六、文件上傳接口
3、jmeter的參數化
一、第一種方法:用戶定義的變量
這種就是爲了方便管理參數,只能有一個值,好比說ip地址不常常變化的
二、第二種方法:函數生成器
函數生成器能夠參照必定的規則生成數據,這樣的好比說生成一些隨機數
(1)隨機函數__Random
(2)計數函數__counter
此函數從1開始,每調用這個函數一次它就會自動加1
第一個參數:True,那麼每一個用戶有本身的計數器,能夠用於統計每一個線程各執行了多少次。False,全局計數器。
第二個參數:重用計數器函數建立值的引用名。測試人員能夠這樣引用計數器的值:${test}。這樣一來,測試人員就能夠建立一個計數器後,在多個地方引用它的值。
(3)時間函數__time
hh表明12小時制,HH表明24小時制,若是函數的值什麼都不寫,則值取時間戳。
註釋:時間戳,從計算機發明的那一天到如今過了多少秒(能夠百度時間戳轉換工具,轉換成時間)。jmeter是java開發的,java裏面的時間戳默認是精確到毫秒,因此要除以1000纔是真正的時間戳
(
4)惟一id函數__UUID
這個就是每次會生成一個隨機的uuid,都是惟一的
三、第三種方法:從文件中讀取
文件讀取就是事先寫好一些數據,而後從文件中讀取,這樣的話,好比說登陸接口,帳號和密碼都是咱們事先註冊好的
添加--配置原件--CSV data set config-添加文件,取名字,在參數中用${你取得名字}代替。
小提示:
若是把文件放在bin目錄下,能夠只寫文件名,不用放絕對路徑了。
4、jmeter的關聯
調用第一個接口,從接口的返回數據中拿到某個值,放到第二個接口裏面來用
舉例:登陸獲得的cookie,傳給金幣充值接口
一、登陸時獲得以下返回
{
"error_code": 0,
"
login_info": {
"login_time": "20180811173721",
"
sign": "f9ed588147c86ca4c600a0bac2b13179",
"userId": 1
}
}
二、因而獲得函數(&表明大括號):
$.login_info.sign
三、登陸接口下添加「後置處理器--JSON Extractor」,在哪一個請求獲取數據,就放在哪一個請求的下面。
小提示:當返回不是json格式時,能夠用正則表達式提取器
四、把函數複製過去,取一個名字好比sessionid
五、在金幣充值下添加「HTTP信息頭管理器」,在HTTP信息頭管理器中添加Cookie
六、填寫好金幣充值接口