以前也并沒有做過接口測試,甚至都不太理解接口到底是什么,但是公司的要求做接口測試,而且接口測試相對功能測試更高效,所以自己看jmeter視頻學了一些覺得還是挺受用的,至少,開發說bug改好了,我不用一個一個的去手工的執行,直接跑一次腳本就值得有沒有改好。所以還是挺有點成就感的。
接口,首先還是要清楚接口的功能是什么?測試的接口協議,一般都是http協議,然后根據功能,接口應該有哪些用例,返回的參數是什么,然后準備好測試數據。
用jmeter配置一個http接口
1.在測試計劃下配置一個線程組,在線程組下添加http信息頭管理器、http請求默認值、http請求。
2.在http請求下添加CSV Data Set Config配置原件,做參數化;添加一個響應斷言和查看結果樹監聽器。
基本的接口測試需要的元件已經添加完成,下面來說說配置。
各個元件的配置
1.線程組
線程組主要修改循環次數和Ramp-Up Period,循環次數根據測試用例數據需要循環的次數來確定。啟動線程時間盡量根據循環測試寫大一點,避免出現分功能性錯誤。
2. http信息頭管理器
添加一個參數content-type變量,給變量賦值,如下圖。
HTTP信息頭管理器在Jmeter的使用過程中起著很重要的作用,通常我們在通過Jmeter向服務器發送http請求(get或者post)的時候,往往后端需要一些驗證信息,比如說web服務器需要帶過去cookie給服務器進行驗證,一般就是放在請求頭(header)中,因為對于此類請求,在Jmeter中就可以通過HTTP信息頭管理器,在添加http請求之前,添加一個HTTP信息頭管理器,發請求頭中的數據通過鍵值對的形式放到HTTP信息頭管理器中。在往后端請求的時候就可以模擬web攜帶header信息了。 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ——本段轉自CSDN?sunshinelyc的專欄
3.http請求默認值
輸入服務器名稱或IP和端口號。
注意:服務器名稱或端口號不需要加?http://,直接輸入IP地址或網址即可。端口號如果是默認可以不用輸入。
4.http請求配置
名稱可以根據接口功能自行修改,方法根據協議選擇,然后輸入路徑和同請求一起發送的參數。
參數應該有3種配置方式,我比較喜歡用中間的一種,修改方便,三種配置方式只能選擇一種。
此處參數的值參數名與CSV Data Set Config中的參數名要匹配,格式:${值變量},也可以在路徑中寫成參數化的格式,如http請求圖
5.CSV Data Set Config
filename:參數數據的路徑。文件的后綴名保存為.csv格式。
file encoding:主要根據導入的文件數據編碼確定編碼類型。
variable names:每列數據對應的變量名。
Delimiter:.csv格式的后綴一般是用逗號間隔。
6.響應斷言
響應斷言參數化也是使用CSV Data Set Config文件中的數據配置,可以添加多個文本參數,一般配置如下,各個字段分別代表什么可以自行去查閱
7.查看結果樹
查看結果樹一般不需要配置,點擊運行后,斷言匹配或接口運行成功會顯示綠色通過圖標
以上是完成一個接口測試需配置的元件和配置步驟。我也還是一個小白,正在測試的路上一點點的學習和總結,可能在實際工作中還是會遇到一些其他的問題,然而,我也正是在解決問題中慢慢的成長,一起加油吧!
問題:用jmeter調用接口傳到數據庫中的數據有的會顯示為“???”形式的亂碼,但是用fiddler單獨的調用接口和參數,數據庫顯示正常,不知道你們是否有遇到過?然后是怎么解決這種情況的呢?(http請求的接口是用c#語言寫的,數據庫是sql server2014。)