① api介面測試的步驟
1、拿到介面文檔的時候先分析文檔,分析的內容有:請求類型、必填項、選填項、入參、出參及描述
2、編寫測試用例,測試用例的編寫參考下圖;
3、利用eolinker、jmeter或者其它介面測試工具執行測試用例;
(在介面沒有問題的情況下,前端測試出的bug都屬於前端開發人員)
5、介面測試完成後再進行前端的功能及UI交互測試;
6、提交buglist清單,修復後一定要回歸測試。
具體可以在eolinker在線使用了解: www.eolinker.com
② 介面測試怎麼才能做好
這個問題還是從需求、測試用例設計、執行來說吧。
首先要了解這個介面提供的服務的需求定義,那麼我們就知道大概測試的結果是啥。同時理論上要先提供介面規范,方便後續測試,以及給調用者聯調的一個文檔約定。
根據測試的介面規范,基於業務進行場景設計,再結合邊界值設計方法、等價類劃分等常用設計方法進行用例設計。
1.設計的方向是常規的測試用例設計:協議規范測試、介面入參、介面出參。
協議規范測試:比如HTTP協議:URL地址、Header測試。不過一般情況下,默認調用者按照介面規范正常調用。這個不用過於詳細測試。
2.介面入參:參數個數測試(注意是否必傳欄位),參數值測試(為空、正常值、非法值等,以及首尾有空格是否過濾)。
3.介面出參:至少涵蓋一條成功的響應和一條失敗的響應,當然我們測試出更多錯誤碼,我們的覆蓋率也就更全面。
4.業務場景用例: 這個需要你對於這個介面的業務的了解程度,而且這是最重要的部分。
比如中間使用了緩存服務(第一次緩存沒有,是不是直接讀數據源,並存入緩存;第二次直接讀取緩存是否正確);
比如需要考慮請求外部的介面獲取相應的信息的時間損耗(連接不上外部介面,外部介面下線了,外部介面響應太慢);
1.需要你對介面協議有一定的了解,選擇適當的開源工具(如postman)或者自己編寫腳本進行模擬請求。
2.需要熟悉介面所使用的中間件等知識(比如redis、kafka、mysql資料庫)。
3.需要模擬外部介面返回給你現在正在驗證的程序的介面。(比如扣費業務,你不可能每測一個業務,就去調真實扣費)。
是web開發介面嗎?建議使用Postman
一、什麼是介面?
介面測試主要用於外部系統與系統之間以及內部各個子系統之間的交互點,定義特定的交互點,然後通過這些交互點來,通過一些特殊的規則也就是協議,來進行數據之間的交互。
二、 常用介面採用方式:
1、webService介面:是走soap協議通過http傳輸,請求報文和返回報文都是xml格式的,我們在測試的時候都用通過工具才能進行調用,測試。可以使用的工具有apipost、jmeter、loadrunner等;
2、http api介面:是走http協議,通過路徑來區分調用的方法,請求報文都是key-value形式的,返回報文一般都是json串,有get和
post等方法,這也是最常用的兩種請求方式。可以使用的工具有apipost、jmeter、loadrunner等;
三、前端和後端
前端:網站前端是對網頁靜態頁面的設計,通俗的來說,就是我們肉眼能看的到的東西,當我們瀏覽網站的時候所看到的頁面上的內容幾乎都是屬於前端,前端的工作就是網站頁面,靜態的頁面是沒有後端成分的,前端主要包括html和css外加js等一些樣式和布局。
後端: 網站的後端就是動態網站的技術,比如網站上的一些注冊登錄和一些彈窗,這些都是後端的邏輯,常用的後端語言有php,jsp等,後端的資料庫也包含myspl等,都是對後端進行存儲數據。
四、 介面測試概念
介面測試是測試系統組件間介面的一種測試。介面測試主要用於檢測外部系統與系統之間以及內部各個子系統之間的交互點。測試的重點是要檢查數據的交換,傳遞和控制管理過程,以及系統間的相互邏輯依賴關系等(通俗來說就是,檢查業務邏輯是否滿足業務需求,校驗欄位是否正常你實際結果是否滿足預期)
五、 介面的組成:
a、介面說明
b、調用url
c、請求方法(getpostput等)
d、請求參數、參數類型、請求參數說明
e、返回參數說明
六、為什麼要做介面測試,介面測試的目標
介面其實app和前端交互用的,所以好多人問,為啥做功能測試還要測介面,目標是啥不是多此一舉嗎?首先我告訴大家,這種想法是錯誤的
那麼舉一個例子:
例如一個登陸介面,例如產品上規定用戶名6-10個字元數字下劃線,但後端沒做判斷。但我們業務人員測試肯定驗證,但只是前端做了校驗,後端壓根就忘了這個小需求.那麼後果來了如果一個懂的直接抓包去篡改你的介面,然後繞過校驗,通過sql注入直接隨意登錄。如果你這是一個下單業務,是不是給公司造成了很大損失
所以此時此刻介面測試目標來了:
1.可能發現客戶端沒有發現的bug(那麼也叫隱藏bug)
2.及早爆出風險(保證質量正常上線)
3.介面穩定了,前端隨便改
4.最重要檢查系統安全性,穩定性
七、如何進行介面測試
1.使用介面測試工具進行測試,介面測試和介面文檔生成工具apipost,介面測試和性能測試工具jmeter
2.介面狀態碼表示含義
例如:200(成功)/300(重定向別的地方)/400(請求語法錯誤)/500(伺服器異常)
測試點:
B. 參數組合(傳入不同值)
C. 介面安全(繞過驗證/繞過身份驗證/參數是否加密等)
D. 異常驗證(輸入異常參數邊界值)
練