測試接口的時候,可能很多人都會想,按著研發給的接口協議文檔來測,不就好了嗎?

 

其實,對于接口的測試,還需要有點深度的需求分析,然后再進行對應的測試。對于接口測試,這里有個不太詳細的總結,給大家分享下~

 
維基百科對【接口測試】的定義如下:接口測試,是集成測試的一部分;即驗證被測接口在功能、可靠性、性能和安全方面是否達到預期的軟件測試活動。
 
接口測試,不僅僅是根據接口文檔做簡單的輸入輸出的測試。下面給大家看個簡單的分析:
 
· 業務功能分析:
    正常情況;
    異常情況;
 
· 邊界分析:
    參數有、無或null;
    參數順序、個數、類型;
    特殊字符;
    覆蓋必輸入字段;
    組合可選字段;
    字符串長度(0、max、max+1);
    業務規則邊界;
 
· 隱形需求:
    并發;
    DB數據量大;
    同時大批量數據;
    環境異常;
 
· 安全性:
    SQL注入;
    敏感信息是否加密;
 
· 性能測試:
    CPU;
    內存;
    磁盤I/O;
    網絡I/O;
 
 
舉個例子:給某客戶端提供群發接口,該接口協議采用HTTP+JSON/XML方式傳輸,返回參數使用JSON包裝好后的數據以便分析,其中的一個接口協議如下:
 
接口描述:批量發送相同的內容
接口地址:---
請求方式:post
請求參數:
字段名稱  數據類型  必填  描述
----      string    是    賬號
----      string   是    密鑰
----      string   是    被叫號碼集合
----      string   是    主叫號碼
----      string   是    短信內容
----      string    是    時間戳
返回結果:
參數名稱  數據類型  說明
----      string    被叫號碼
----      string    生成的短信發送序列號
result    string    1:發送成功;0:發生失敗
resultMsg string    失敗原因
 
對該接口進行部分簡單的分析:
 
業務功能:
    正常使用場景:用戶名與主叫號碼匹配,其他字段符合規則
    ......
    異常使用場景:用戶名或密鑰不對等
    ......
邊界分析
    業務規則邊界:被叫單個/多個(最大個數)/被叫號碼異常、長短信邊界
    .......
    參數邊界:必輸字段都有填寫正確/缺少必輸字段、缺少時間戳或時間戳為null或格式不對、被叫為空、被叫號碼長度
    ......
安全性:
    敏感字符是否加密、SQL注入、惡意攻擊等