接口自動化測試用例設計方法及用例編寫規范


一、接口自動化測試用例設計方法

 

1.1接口參數覆蓋

接口測試通過輸入使用參數組合,獲得服務器返回值,並根據預先設定的規則判斷是否符合預期值。在接口測試中,根據接口的功能不同,需要側重檢測的方面也不同。主要從以下幾個方面考慮用例設計:

1) 前提條件

  有些接口需要滿足前提條件,才可以成功獲取數據。

  例:常見的需要登錄    token

2)      參數類型(數值型、字符型、布爾型、枚舉型、組合類型)

  a.       特定接口字段對入參的參數類型有要求

  例:商品的價格

3)      異常值:null、空字符

  a.       必要參數不允許為空

  例:登錄賬號/密碼

4)      邊界值

  a.       有限定取值范圍的字段(取值范圍內的最大、最小、最大+1、最小-1,范圍內取值)

  例:用戶可用積分

5)      默認值

  a.       非必選參數,未傳值時采用默認值

6)      非法值

  a.       類型不匹配

  b.      超出類型范圍

  c.       超出操作系統限制

  d.      系統關鍵字

7)      參數組合

  采用笛卡爾積的全組合策略。

  例:3個參數,每個參數有5種取值,組合起來就有5x5x5=125個測試用例,優點是覆蓋全面,缺點是組合數量巨大,工作量大。

8)      全對偶組合

  保證每個參數和其他參數都有組合出現,即采用盡可能少的組合覆蓋盡可能對的參數,覆蓋性價比很高。

  例:3個參數,每個參數有5種取值,大約只需25個用例即可覆蓋。

9)      單點失效

  單個參數使用非法或異常值,其他值保持正常取值。

10)   多點失效

  多個參數使用非法或異常值,其他采用正常取值。

11)業務規則、功能需求

  根據時間情況,結合接口參數說明,可能需要設計n條正向用例和逆向用例。

 

1.2場景覆蓋

  a.       從用戶角度進行設計的測試覆蓋。主要是模擬用戶的業務操作,達到對用戶行為的覆蓋。

  b.      場景測試優先覆蓋正常路徑,其次是分支路徑以及異常路徑。

  c.       測試場景保持獨立性和原子性,每個測試場景完成獨立的功能,不受其他操作的影響。

 

二、測試斷言設計

自動化測試中的測試通過條件,斷言用於判斷測試用例執行結果是否符合預期。

設計原則:

  a.       盡量保持斷言形式統一。

  b.      選擇具有明確的message參數的斷言方法,使斷言結果的可讀性更強。

  c.       選擇斷言的對象需准確,有代表性。

  d.      不使用接口響應數據作為唯一斷言,需結合數據庫相應數據變化做斷言。

 

三、自動化用例編寫規范

  a.       一個腳本是一個完整的用例。

  b.      用例中正向邏輯用例為主,逆向邏輯用例為輔。

逆向邏輯的情況較多(例如手機號輸錯有很多種情況),逆向邏輯按等價類划分法選取具有代表性的用例編寫。

  c.       用例之間不要產生關聯性,即編寫的每一個用例都是獨立的,不依賴或影響其他用例腳本。

  d.      整個腳本中只對驗證點進行驗證,不需對整個腳本每一步都做驗證。

  e.       測試用例的上下文有一定的順序性,能夠互相連接,並且前置條件清晰。

  f.        盡量把重復任務放入一個方法中,這樣它可以被多個測試用例調用。

  g.      測試用例只要不匹配預設的驗證點,拋出合適的異常並提供詳細的失敗信息。

  h.      前置條件的准備盡量調取功能接口完成,非必要情況不使用直接修改數據庫字段值的形式(必要情況下也要保證所修改字段不影響其它數據或系統功能)  。

  i.        統一命名方式,測試用例模塊名、方法名以test_api名稱命名。

 

做一棵小草,誰也撼動不了………

如果您覺得本篇文章還不錯,歡迎點贊,轉發分享,感謝(*^_^*)


免責聲明!

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



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