1. 程式人生 > >介面測試的工具postman和jmeter

介面測試的工具postman和jmeter

介面:什麼是介面呢?介面一般來說有兩種,一種是程式內部的介面,一種是系統對外的介面。

系統對外的介面:比如你要從別的網站或伺服器上獲取資源或資訊,別人肯定不會把資料庫共享給你,他只能給你提供一個他們寫好的方法來獲取資料,你引用他提供的介面就能使用他寫好的方法,從而達到資料共享的目的,比如說咱們用的app、網址這些它在進行資料處理的時候都是通過介面來進行呼叫的。 程式內部的介面:方法與方法之間,模組與模組之間的互動,程式內部丟擲的介面,比如bbs系統,有登入模組、發帖模組等等,那你要發帖就必須先登入,要發帖就得登入,那麼這兩個模組就得有互動,它就會丟擲一個介面,供內部系統進行呼叫。

現在我們最常用的兩種介面就是webservice介面和http api介面

webService介面是走soap協議通過http傳輸,請求報文和返回報文都是xml格式的,我們在測試的時候都用通過工具才能進行呼叫,測試。

http api介面是走http協議,通過路徑來區分呼叫的方法,請求報文都是key-value形式的,返回報文一般都是json串,有get和post等方法,這也是最常用的兩種請求方式。

介面測試的目的是測試介面,尤其是那些與系統相關聯的外部介面,測試的重點是要檢查資料的交換,傳遞和控制管理過程,還包括處理的次數。

介面測試是測試系統元件間介面的一種測試。

介面測試就和普通功能測試沒什麼區別,區別就是功能測試是在頁面上點點點,在頁面上輸入值,提交資料看結果,而介面測試沒有頁面,通過介面規範文件上的呼叫地址、請求引數,拼接報文,然後傳送請求,檢查返回結果。

介面測試的必要性

一、可以發現很多在頁面上操作發現不了的bug

二、檢查系統的異常處理能力

三、檢查系統的安全性、穩定性

四、前端隨便變,介面測好了,後端不用變

介面測試流程

一、需求評審,熟悉業務和需求

二、開發提供介面文件

三、編寫介面測試用例

四、用例評審

五、提測後開始測試

六、提交測試報告

介面測試的前提:測介面的話,必須得有介面文件,知道 url的請求方式 引數 以及引數的說明

介面文件至少包括:

1、介面說明 2、呼叫url 3、請求方法(get\post) 4、請求引數、引數型別、請求引數說明 5、返回引數說明

http://doc.nnzhp.cn/index.php?s=/5&page_id=7

為什麼要做介面測試呢? 我們知道,其實介面也是app端或者說是web前端進行呼叫的,那我們直接在app或者web端直接測試不就好了,反正它都是呼叫的介面,app和web端功能測試通過了,那介面不就是好使的嘛。 真的是這樣嗎?說的好像很有道理,其實不然,要是真的是這樣的話,那我還講啥介面測試。 思考一個問題,假如現在在京東app上買東西,支付訂單,訂單金額是500元,支付的話,那肯定要呼叫支付介面,你在頁面上操作的話,訂單金額是修改不了的,那如果你想測試一下服務端有沒有校驗訂單的金額,我想把訂單金額改成5元,那在頁面上點是測試不了的,這個時候我們就可以直接用介面來呼叫,修改一下訂單金額的值,然後再發請求就可以了。 當然這只是我舉個例子,介面測試當然不只是這一點原因,總的來說還是為了更好的提高我們產品的質量。

怎麼來測介面-http介面

get請求:

介面請求報文拼接 1、url?param=value&param2=value 這種是最簡單的一種,問號前面是請求url,後面是請求的引數名和引數值,多個引數用&來連線 https://api.douban.com/v2/book/search?q=鄒偉偉

單個引數:http://api.nnzhp.cn/api/user/stu_info?stu_name=小黑

多個引數用&符連線:

 

介面測試工具:Postman

 

 

簡要描述:

 

  • 獲取學生資訊介面

 

請求URL:

 

  • http://api.nnzhp.cn/api/user/stu_info

 

請求方式:

 

  • get

 

引數:

引數名 必選 型別 說明
stu_name string 學生姓名

 

 

返回引數說明

引數名 型別 說明
error_code int 錯誤編碼,0為操作成功
stu_info object 學生物件資訊
id int 學生id
name string 學生姓名
sex string 學生性別
age int 年齡
addr string 家庭住址
phone string 手機號
grade string 班級
gold int 金幣