一、介面測試發現的一些典型問題
1.傳入引數處理不當,導致程式crash;
2.型別溢位,導致資料讀出和寫入不一致;
3.因物件許可權未進行校驗,可以訪問其他使用者敏感資訊;
4.狀態處理不當,導致邏輯出現錯亂;
5.邏輯校驗不完善,可利用漏洞獲取非正當利益等。
二、介面設計合理性
1.介面字段是否冗餘;
2.介面是否冗餘;
3.介面是否返回了呼叫方期待得到的資訊;
4.介面定義是否可滿足所有呼叫需求;
5.介面定義呼叫是否方便。
三、介面測試用例設計
1.針對輸入設計
1.1 入參型別:數值型(int,long,float,double等)、字串型別、陣列或鍊錶、結構體(struct)。
1.2 數值型
等價類:取值範圍內、取值範圍外、取值範圍邊界
常見問題和風險:特殊值處理不當導致程式異常退出、型別邊界溢位、取值範圍外值未返回正確的錯誤資訊等。
1.3 字串型
字串長度:等價類(取值範圍內、取值範圍外)、邊界法(規定範圍邊界、型別邊界)、特殊值(0,空字串)
字串內容:特定型別(英文、中文、大小寫)、特殊字元(!@#¥%……&*()等)、敏感字元(「」等)
可能出現的問題和風險:傳入非特定型別程式異常退出、超長字元未進行處理導致儲存和顯示燈異常、其他使用者可見設定的敏感字。
1.4 陣列或鍊錶型別
成員個數:等價類(取值範圍內、取值範圍外)、邊界法(規定範圍邊界、個數邊界值)、特殊值(0等)
成員內容:等價類(合法和非合法成員)、重複法(重複的成員)
可能存在的問題和風險:0個item時程式異常退出、重複的item處理時未去重導致結果異常等
2.針對邏輯設計
2.1 約束條件分析
數值限制:分數限制、金幣限制、等級限制等;
狀態限制:登入狀態等;
關係限制:繫結關係、好友關係等;
許可權限制:管理員等。
常見的問題和風險:約束條件判斷不足,導致使用者可通過特殊手段獲取利益。
2.2 操作物件分析
2.3 狀態轉換分析
常見的問題和風險:可通過特殊手段達到原本不能的狀態,從而謀取利益
2.4 時序分析
3.針對輸出結果
3.1 介面處理正確的結果可能只有乙個,但是錯誤異常返回結果有很多情況很多值
常見問題和風險:錯誤前端處理不足導致前端異常、錯誤提示不當導致使用者看到晦澀的錯誤碼、錯誤提示不當導致使用者不知道**出了問題,人如何解決。
4.介面超時
4.1 常見引起的問題:未進行超時處理,導致整個流程阻塞、超時後又收到介面返回,導致邏輯出現錯亂。
5.已廢棄介面測試
認知測試架構
起初,聽到測試架構設計時,如同聽到軟體架構設計一樣,覺得很神聖,也很神秘。神聖,是因為這兩個職位分別是軟體測試,以及軟體開發在技術線路上發展的頂 尖職位,一般都是專家級職位。神秘,是因為不清楚它們具體是做什麼的,不說專業外的人,即便同是軟體界的人士,也不一定都能說得清楚。下面就讓我們一起來 解讀。首...
認知測試架構
起初,聽到測試架構設計時,如同聽到軟體架構設計一樣,覺得很神聖,也很神秘。神聖,是因為這兩個職位分別是軟體測試,以及軟體開發在技術線路上發展的頂 尖職位,一般都是專家級職位。神秘,是因為不清楚它們具體是做什麼的,不說專業外的人,即便同是軟體界的人士,也不一定都能說得清楚。下面就讓我們一起來 解讀。首...
認知測試架構
起初,聽到測試架構設計時,如同聽到軟體架構設計一樣,覺得很神聖,也很神秘。神聖,是因為這兩個職位分別是軟體測試,以及軟體開發在技術線路上發展的頂 尖職位,一般都是專家級職位。神秘,是因為不清楚它們具體是做什麼的,不說專業外的人,即便同是軟體界的人士,也不一定都能說得清楚。下面就讓我們一起來 解讀。首...