介面測試-引數校驗

xingditu發表於2020-11-17

介面測試-引數校驗

一、引數合法性

為什麼看程式碼?

  • 把關實現是否與介面文件和需求是否一致
  • 對於測試點的查漏補缺

1.定義的型別是否和介面文件保持一致

public class SuperMarket {
    Integer title;
    String name;
    long amount;
    boolean freeze;
}

2.欄位必傳和非必傳

  • 必傳
    1.如果我不傳業務邏輯會怎樣(比如走到下游?邏輯不合理?)
    不傳的預期結果是啥?
    非必傳:
    不傳會走到預設值,會對業務有哪些影響

3.是否合法
比如:已知Integer title的值肯定會大於0,那需要校驗值為-1
String傳空字串,String欄位不傳=NULL

4.長度校驗
比如:
int 資料型別是32位、有符號的以二進位制補碼錶示的整數;
最小值是 -2,147,483,648(-2^31);
最大值是 2,147,483,647(2^31 - 1);
long 資料型別是 64 位、有符號的以二進位制補碼錶示的整數;
最小值是 -9,223,372,036,854,775,808(-2^63);
最大值是 9,223,372,036,854,775,807(2^63 -1);
有一個userid為int型別,我傳超過10位會報空指標

5.結合業務
比如:
有一個業務場景需要0和1,如果我傳2會怎樣

常用型別list ,列舉,String物件 ,Map, 物件object ,列舉

注:java預設型別知識點
1、int型別定義的陣列,初始化預設是0
2、String型別定義的陣列,預設值是null
3、char型別定義的陣列,預設值是0對應的字元
4、double型別定義的陣列,預設值是0.0
5、float型別定義的陣列,預設值是0.0

為什麼看程式碼:
1.把關實現是否與介面文件和需求是否一致
2.對於測試點的查漏補缺

相關文章