前言:
本文主要針對http介面進行測試,使用jmeter工具實現。
jmter工具設計之初是用於做效能測試的,它在實現對各種介面的呼叫方面已經做的比較成熟,因此,本次直接使用jmeter工具來完成對http介面的測試。
1.介紹什麼是介面
現在最常用的2種介面就是webservice和http api介面,webservice介面是走soap協議通過http傳輸,請求報文和返回報文都是xm格式,可以通過jme、soapui工具進行測試;http api介面是走http協議通過路徑來區分呼叫的方法,請求報文格式都是key-value形式,返回報文一般是json串,常見的請求方式有get、post請求等;
2.介面測試流程
a)需求評審,熟悉業務和需求
b)開發提供介面文件(必須提供介面說明、url、請求方法、請求引數、引數型別、請求引數說明及返回引數說明)
c)編寫介面測試用例
d)進行用例評審
e)提測後開始測試
f)提交測試報告
3.http協議常見的2種請求方式區別
get和post請求:
get請求:從指定的伺服器中獲取資料,直接在瀏覽器裡輸入就可以獲取資訊
post的請求:提交資料給指定的伺服器處理,可以向伺服器傳送修改請求,從而修改伺服器的,需要借助測試工具;
get請求特點:
a)get請求能夠被快取
b)get請求會儲存在瀏覽器的瀏覽記錄中
c)以get請求的url能夠儲存為瀏覽器書籤
d)get請求有長度限制
e)get請求主要用以獲取資料
post請求特點:
a)post請求不能被快取
b)post請求不會儲存在瀏覽器瀏覽記錄中
c)以post請求的url無法儲存為瀏覽器書籤
d)post請求沒有場地限制
get和post的區別:
get
post
點選返回/重新整理按鈕
沒有影響
資料會重新傳送(瀏覽器將會提示使用者「資料被從新提交」)
新增書籤
可以不可以
快取
可以不可以
編碼型別(encoding type)
歷史記錄有沒有
長度限制有沒有
資料型別限制
只允許ascii字元型別
沒有限制。允許二進位制資料
安全性
查詢字串會顯示在位址列的url中,不安全,請不要使用get請求提交敏感資料
因為資料不會顯示在位址列中,也不會快取下來或儲存在瀏覽記錄中,所以看post求情比get請求安全,但也不是最安全的方式。如需要傳送敏感資料,請使用加密方式傳輸
可見性
查詢字串顯示在位址列的url中,可見
查詢字串不會顯示在位址列中,不可見
http與https協議的區別:
1. http是超文字傳輸協議,資訊是明文傳輸;https是具有安全性的ssl加密傳輸協議。
2. http與https使用的是不同的連線方式,埠也一樣,http預設埠是80;https預設埠是443;
3. http連線狀態比較簡單,是無狀態的;https協議是由ssl+http協議組成的可進行加密傳輸、身份認證的網路協議。
4. http介面測試-簡單示例
a. get請求,一般是url通過?拼接引數,多個引數之間使用&
符鏈結;也可以在parameters內通過key-value形式傳引數
c.post請求,上傳檔案,請求引數格式是file
d. post請求,需要傳頭資訊header
e.post請求,需要新增cookie資訊
f.請求加斷言
5. jmeter 關聯
與系統互動過程中,系統返回的內容,需要在接下來的互動中用到,簡單說明就是:a介面的返回值中設定正規表示式提取器提取想要的值,在b介面中引用
jmeter介面測試複習總結
最近大家看我的隨筆就知道我一直在複習jmeter介面測試這一塊的知識。幾年前我使用過jmeter工具,這兩年一直在做ui的自動化測試,沒有去做介面的測試工作,一直呆在一家公司,測試的內容很固定,中途也安逸了一段時間。趁著今年疫情,晚上不能出門玩,就好好在家複習自己的測試知識體系。我從最開始的介面文件...
JMeter測試dubbo介面總結
1.安裝jmeter 安裝到 usr local下 將該jar 放到 jmeter安裝目錄的lib ext目錄下 我的jmeter安裝位置為 usr local apache jmeter 這樣jmeter就支援dubbo協議的請求了 3.開啟jmeter 4.在test plan下新增乙個 執行緒...
介面效能測試(Jmeter 操作總結
以前常用soapui來做介面的效能測試,這次用的jmeter,對需由客戶端根據時間戳等登入引數生成隨機token值和印籤值來發請求的系統,非它莫屬了。下面就這次測試的難點和操作注意問題展開總結。1.指令碼準備 測試中,傳送的請求體以json 為主,且每個介面要求有token值和印籤值 根據請求的bo...