postman接口功能測試


前言                                                        

  之前還沒實際做過接口測試的時候呢,對接口測試這個概念比較渺茫,只能靠百度,查看各種接口實例,然后在工作中也沒用上,現在呢是各種各樣的接口都丟過來,總算是有了個實際的認識。雖然只是接口功能的測試,但是也要記錄下自己學到的點滴技能。

  因為只是接口的功能測試,所以目前是用postman做測試,比較簡便,當然這只是接口測試的入門而已,了解的只是冰山一角,后續會努力往接口壓力、接口性能、接口自動化方向靠攏。(postman的安裝方法可以百度一下,這里就不提了)

  各位大佬勿噴哈~

接口理論                                                 

  我們常說的接口就是API,接口測試是測試系統組件間接口的一種測試。接口測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的交互點。測試的重點是要檢查數據的交換,傳遞和控制管理過程,以及系統間的相互邏輯依賴關系等。
  其實接口測試就和普通功能測試沒什么區別,區別就是功能測試是在頁面上輸入值,提交數據看結果,而接口測試沒有頁面,通過接口規范文檔上的調用地址,請求參數,拼接報文,然后發送請求,檢查返回結果。
  

接口實例                                                

一、POST

POST請求是用來發送數據的,下面以下XX系統分配加工廠為例

1、產品經理的PRD文檔要求如下(分配加工廠接口的修改內容如下):

1) 分配加工廠接口里新增加工廠ID字段,整數類型,非必填;

2.)若對單領料單已經審核通過,限制只有待審核狀態才能分配加工廠,若不是則提示“對單領料單不是待審核,不能分配加工廠”;

2、開發人員的接口文檔如下:

接口名稱:XX系統分配加工廠接口

接口路徑:POST  /process/requisitionOrder/updateDistributeStatus
請求參數:
Headers:
參數名稱 參數值 是否必須 示例 備注
Content-Type application/json    
Body:
 
復制代碼
{
  "factoryId": "123",//加工廠ID
  "factory": "XX服飾",//加工廠名稱
  "produce_order_id": [//生產制單(純數字) 多個用,分開
    1134360
  ]
}
復制代碼

返回數據:

{
  "msg": "success",
  "code": "0",
  "info": "操作成功"
}

3、測試人員的測試用例如下:

用例編號 模塊 用例標題 前提條件 操作步驟 預期結果
01 XX接口 分配加工廠接口里新增加工廠ID字段,整數類型,非必填 填寫錯誤的或類型不對的加工廠ID 返回具體的錯誤信息
      不填寫加工廠ID,其他條件符合要求   分配加工廠成功,XX系統的領料單正確顯示加工廠名稱
      填寫正確的加工廠ID,其他條件符合要求   分配加工廠成功,XX系統的領料單正確顯示加工廠名稱
      填寫正確的加工廠ID,對單領料單已經審核通過   返回提示“對單領料單不是待審核,不能分配加工廠”;

4、測試人員執行測試用例如下:

1)打開Postman,填寫接口信息,具體操作如圖
注:接口文檔中的URL是不帶環境地址的,所以將URL復制到地址欄時,前面還要加上環境的地址,比如測試環境的地址+接口URL,
當然如果有多個環境的話,可以用環境配置功能,具體配置步驟在第4)步進行描述。

2)結合測試用例,組合變換參數信息后,查看返回的JSON數據與PRD是否一致

3)測試用例遍歷完成后,以上即完成了POST請求的接口功能測試。

4)這里描述一下postman的環境配置

第一步,如圖

第二步,如圖

第三步,如圖

第四步,如圖

第五步,如圖(這是針對有多個環境的情況,比如一般都會有測試環境、驗收環境、生產環境)

 

二、GET

GET請求是用來獲取數據的,下面以XX系統獲取出庫賬單為例,(以下只列出部分數據信息用於演示)

1、產品經理的PRD文檔要求如下:

輸入參數
字段名稱 是否必填 取值邏輯 備注說明
賬單日期   例如2019-04-10
供應商ID    
輸出參數
賬單編號 ML+年月日+流水號 一個賬單日期內,一個供應商只對應一個賬單
賬單日期 輸入參數里的賬單日期  
供應商名稱 從出庫單獲取  
SKU 從出庫單明細獲取  
采購單價 根據SKU獲取檔案的基准價  
數量 出庫數量  
賬單金額 采購單價*數量,金額為負  

2、開發人員的接口文檔如下:

接口名稱:出庫賬單同步到XX系統接口

接口路徑:GET  /purchase/prepareOrder/importListFromPlm
請求參數:
Query:
參數名稱 是否必須 示例 備注
billDate 2019-02-20 賬單日期
supplierId 1 供應商ID
返回數據:
復制代碼
{
    "msg": "success",
    "code": "0",
    "info": {
        "list": [
            {
                "billNo": "ML201902205005",         //賬單編號
                "billDate": "2019-02-20",           //賬單日期
                "factory": "生產部薩文服飾-燁琳",   //供應商名稱
                "materialSku": "16MLZS0513-628",    //物料SKU
                "num": 20,                          //數量
                "purchasePrice": 0,                 //采購單價
                "billSum": 0,                       //賬單金額
            }
        ]
    }
}
復制代碼

 

3、測試人員的測試用例如下:
用例編號 所屬模塊 用例標題 前提條件 測試步驟 預期結果
01 XX接口 輸入正確的‘賬單日期’請求參數,接口正確返回相應的賬單數據 系統中有在該賬單日期內的賬單

1、在請求地址中增加‘billDate’參數;
2、billDate填寫正確的賬單日期,點擊GET

{"msg": "success", "code": "0", "info":….}
info顯示正確的賬單信息

02 XX接口 輸入不符合規范的‘賬單日期’請求參數,接口返回參數不符合要求 填寫12/23/45

1、在請求地址中增加‘billDate’參數;
2、billDate填寫不符合規范的賬單日期,點擊GET

{"msg":"賬單日期不符合規范;","code":"43"}
03 XX接口 將‘賬單日期’請求參數置空,接口返回參數必填  

1、在請求地址中增加‘billDate’參數;
2、billDate不填寫,點擊GET

{"msg":"賬單日期不能為空;","code":"43"}
04 XX接口 ‘供應商ID’請求參數 請求中沒有‘billDate’

1、在請求地址中增加‘supplierId’參數;
2、supplierId填寫正確的供應商ID,點擊GET

{"msg":"賬單日期不能為空;","code":"43"}
05 XX接口   請求中有‘billDate’

1、在請求地址中增加‘billDate’,‘supplierId’參數;
2、supplierId填寫正確的供應商ID,billDate填寫正確的賬單日期,點擊GET

{"msg": "success", "code": "0", "info":….}
info顯示正確的賬單信息

06 XX接口   請求中有‘billDate’

1、在請求地址中增加‘billDate’,‘supplierId’參數;
2、supplierId填寫錯誤的供應商ID,billDate填寫正確的賬單日期,點擊GET

{"msg":"供應商ID不存在;","code":"43"}
07 XX接口   請求中有‘billDate’

1、在請求地址中增加‘billDate’,‘supplierId’參數;
2、supplierId不填寫,billDate填寫正確的賬單日期,點擊GET

{"msg": "success", "code": "0", "info":….}
info顯示正確的賬單信息

08 XX接口 ‘賬單編號’輸出參數取值為:ML+年+月+日+4位流水號 接口返回正確數據 1.GET后,查看返回的JSON數據 ‘賬單編號’輸出參數取值為:ML+年+月+日+4位流水號
09 XX接口 以上列舉了部分測試用例,其他的測試用例就不再展示了
4、測試人員執行測試用例如下:
1)打開Postman,填寫接口信息,具體操作如圖
注:接口文檔中的URL是不帶環境地址的,所以將URL復制到地址欄時,前面還要加上環境的地址,比如測試環境的地址+接口URL,
當然如果有多個環境的話,可以用環境配置功能,具體配置步驟可以參考POST的描述

2)結合測試用例,組合變換參數信息后,查看返回的JSON數據與PRD是否一致

3)測試用例遍歷完成后,以上即完成了GET請求的接口功能測試。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM