本文介紹了使用JMeter進行接口測試的方法,包括配置HTTP請求默認值、用戶自定義變量,并通過變量在注冊和登錄請求中傳遞參數。同時,設置了JSON斷言并查看結果樹以驗證請求成功和響應數據正確性。
1.認識JMeter
(1)配置元件:配置對應的一些數據 (例如:HTTP請求默認值、用戶定義的變量)
(2)【HTTP請求默認值】:HTTP請求默認值是設置的Web服務器部分信息,可以貫穿多個接口。
適用于切換測試環境:比如SIT測試環境,UAT測試環境,上線前的STAGE環境等。
(3)【用戶自定義變量】:定義變量貫穿多個接口。
2.HTTP請求默認值
??因為注冊跟登錄請求的IP地址都是一樣的,后面的路徑不一樣而已,所以把相同的Web服務器請求放在【HTTP請求默認值】里面。
??如果后面的接口A【HTTP請求】中Web服務器部分與注冊、登錄的不一樣,可以在【HTTP請求】時填寫接口A的Web服務器信息,以接口A的【HTTP請求】為準。只有【HTTP請求】Web服務器信息為空時,JMeter系統才會去找【HTTP請求默認值】中的Web服務器。
(1)新建【HTTP請求默認值】
右擊【線程組】【添加】【配置元件】【HTTP請求默認值】
![]()
(2)設置【HTTP請求默認值】
① 名稱:HTTP請求默認值-商城地址
② 協議:http
③ 服務器名稱或IP:shop-xxx.com。
![]()
![]()
3.用戶自定義變量
??因為是一個連貫的流程,注冊成功后,會用注冊成功的用戶名跟密碼登錄商城,看是否能夠登錄成功。所以這里注冊跟登錄的用戶名、密碼肯定是一樣的。對于這種一個變量需要用到多個接口的操作,可以通過【用戶自定義變量】來實現。
(1)新建【用戶定義的變量】
右擊【線程組】【添加】【配置元件】【用戶定義的變量】
![]()
(2)設置【用戶定義的變量】
① 名稱:用戶定義的變量-注冊成功后登錄成功
② 添加變量1:accounts,值:20200102。(變量名稱由接口文檔來確定,有些習慣用username為用戶名,password為密碼。)
③ 添加變量2:pwd,值:123456。
![]()
4.HTTP請求【注冊】
(1)設置【HTTP請求】
① Web服務器部分:為空(已設置【HTTP請求默認值】,如果這里有設置,則以【注冊】的為準)。
② 請求方法:POST。
③ 路徑:?s=api/user/reg&application=app&application_client_type=weixin。
④ 參數:點擊“添加”按鈕進行添加參數,通過 ${變量名} 的方式來獲取【用戶自定義變量】參數的值(變量名要與【用戶自定義變量】中的變量名一致)。
![]()
(2)新增【JSON斷言】
![]()
5.HTTP請求【登錄】
(1)設置【登錄】HTTP請求:
① Web服務器部分:為空。
② 請求方法:POST。
③ 路徑:?s=api/user/login&application=app&application_client_type=weixin。
④ 參數:點擊“添加”按鈕進行添加參數,通過 ${變量名} 的方式來獲取。
![]()
(2)新增【JSON斷言】:
![]()
6.【查看結果樹】
(1)檢查【查看結果樹】
① 啟動:點擊啟動,啟動線程。
② 結果樹面板:出現【注冊】【登錄】請求,前面綠色牌顯示請求成功。
③ 響應數據:主要查看Response Body中,信息是否正確:
【"msg":"注冊成功","code":0,"id":"18720","username":"20200103"】
【"msg":"登錄成功","code":0,"id":"18720","username":"20200103"】
![]()
![]()