本文將以某人才招聘網(wǎng)站為例子,通過一系列由簡入深的一些HTTP接口測試的實例來練習如何講JMeter應用到接口測試和功能測試中。
前言 JMeter 基本配置
1. 創(chuàng)建一個新的Test Plan并保存。

2. 新建一個Thread Group, jmeter的所有任務都必須由線程處理,所有任務都必須在線程組下面創(chuàng)建。

不管是功能測試還是性能測試,可以在調試腳本的時候選擇默認設置,如下所示
。如果是性能測試,可以在后期腳本都調試通過后再添加線程的數(shù)目。

3. 新建一個HTTP Request Defaults
在該Thread Group內(nèi)的的其它HTTP Request和該Default 的配置一樣就無需進行配置,比如server name,只需要配置特定的參數(shù)


4. 新建一個HTTP Cookie Manager
也是在Config Element里面,如上圖。
5. 新建一個HTTP Header Manager
也是在Config Element里面,如上圖。
6. 添加View Results Tree

一 用HTTP Request GET去訪問一個網(wǎng)頁
本文的所有實例都是基于以下這個網(wǎng)站進行的,注冊登錄都不需要驗證碼非常適合我們練手。



由上圖可見,hostname不需要填,只需要添加路徑即可。
點擊運行后可以到查看運行結果如下:

二 用HTTP Request GET去登陸一個網(wǎng)頁
這個GET和上面例子相比多了傳入的參數(shù)。
已有的用戶名:13874009226,密碼:1111,請在JMeter上配置HTTP Request GET來測試該網(wǎng)站的登陸接口。


三 用HTTP Request POST去登陸一個網(wǎng)頁
用戶名和密碼同上,請在JMeter上配置HTTP Request POST來測試該網(wǎng)站的登陸接口。


四 如何創(chuàng)建一個新用戶
通過抓包,知道創(chuàng)建一個新用戶需要發(fā)送2個HTTP Request,第一個是check這個用戶是否存在,第二個是真正的注冊用戶的api。

五 在創(chuàng)建新用戶時加入判斷條件
可以通過判斷第一個HTTP Request的結果,為1時則說明該用戶已創(chuàng)建就不要再去重復創(chuàng)建了。
可以利用Regular Expression Extractor和If Controller來一起實現(xiàn)。
JMeter正則表達式,可參考這篇博文:Jmeter關聯(lián),正則表達式提取器使用
a. 引用名稱:下一個請求要引用的參數(shù)名稱,如填寫title,則可用${title}引用它。
b. 正則表達式:
():括起來的部分就是要提取的。
.:匹配任何字符串。
+:一次或多次。
?:不要太貪婪,在找到第一個匹配項后停止。
c. 模板:用$$引用起來,如果在正則表達式中有多個正則表達式,則可以是$2$$3$等等,表示解析到的第幾個值給title。如:$1$表示解析到的第1個值
d. 匹配數(shù)字:0代表隨機取值,1代表全部取值,通常情況下填0
e. 缺省值:如果參數(shù)沒有取得到值,那默認給一個值讓它取。

六 使用用戶自定義變量
pending
七 HTTP Requests之間互相關聯(lián)
pending