?如何對1個接口進行接口測試
一、單接口功能測試
1、接口文檔信息
理解接口文檔的內容:
-
請求URL:?
https://[ip]:[port]/xxxserviceValidation
-
請求方法: POST
-
請求參數: serviceCode(必填), servicePsw(必填)
-
響應參數: status, token
2、編寫測試用例
2.1 正常情況測試
用例1: 使用正確的serviceCode和servicePsw
-
預期結果: status=200, 返回有效token?
# 接口請求
{
"serviceCode":"正確xxxxxx", "servicePsw":"正確xxxxxx",
}# 接口響應
{
"status":"200",
"token":"91a064fe-e17c-4910-90e0-e3d00fda2ca3"
}
2.2 異常情況測試
異常需從以下方面設計測試用例
注意點:多參數注意組合,如兩個字段為空驗證,需驗證都為空、1為空、2為空
-
必填參數缺失:不傳必填參數,如{key:"value"}全部不傳
-
參數值為空:傳空字符串,如{key:""}
-
錯誤參數值:參數錯誤,如{key:"###特殊字符"}和類型錯誤{key:value}
-
超長參數:例中接口無要求,如文本框要求輸入要求8-200限制,{key:"超出200"}
-
超短參數:例中接口無要求,如文本框要求輸入要求8-200限制,{key:"3位123"}
必填參數缺失用例:
serviceCode為空,預期結果: status=300, 無token返回
# 接口請求
{
"servicePsw":"正確xxxxxx",
}# 接口響應
{
"status":"300",
}
參數值為空用例:
serviceCode為空,預期結果: status=300, 無token返回
# 接口請求
{
"serviceCode":"", "servicePsw":"正確xxxxxx",
}# 接口響應
{
"status":"300",}
錯誤參數值用例:
serviceCode錯誤,預期結果: status=300, 無token返回
# 接口請求
{
"serviceCode":"錯誤xxxxxx", "servicePsw":"正確xxxxxx",
}# 接口響應
{
"status":"300",
}
3、測試用例執行
如下圖對接口進行測試
執行測試用例:參數appkey為空校驗
預期:響應體應返回“請輸入appkey”
實際:非法訪問,與預期不符合
?
二、注冊接口功能測試
1、接口文檔信息
參數規則說明:
username:
1、字母、數字組成
2、長度2~20位
3、字母不區分大小寫
password:
1、長度8~20位
2、必須含有字母和數字
email:
標準的電子郵件的字符規則
2、編寫測試用例
2.1 正常情況測試
輸入合法的用戶名、密碼和郵箱,驗證能成功注冊并返回正確的userid。
2.2 異常情況測試
1、用戶名不符合規則:
輸入非字母數字組成的用戶名,驗證注冊失敗并返回相應的錯誤信息。
輸入長度小于2位的用戶名,驗證注冊失敗并返回相應的錯誤信息。
輸入長度大于20位的用戶名,驗證注冊失敗并返回相應的錯誤信息。
2、密碼不符合規則:
輸入不包含字母的密碼,驗證注冊失敗并返回相應的錯誤信息。
輸入不包含數字的密碼,驗證注冊失敗并返回相應的錯誤信息。
輸入長度小于8位的密碼,驗證注冊失敗并返回相應的錯誤信息。
輸入長度大于20位的密碼,驗證注冊失敗并返回相應的錯誤信息。
3、郵箱不符合規則:
輸入不符合標準email規則的郵箱,驗證注冊失敗并返回相應的錯誤信息。
4、參數缺失:
分別缺失用戶名、密碼、郵箱這三個參數中的一個,驗證注冊失敗并返回相應的錯誤信息。
5、參數為空:
分別為空用戶名、密碼、郵箱這三個參數中的一個,驗證注冊失敗并返回相應的錯誤信息。
6、參數類型錯誤:
分別將用戶名、密碼、郵箱的參數類型設為非String類型(如Number),驗證注冊失敗并返回相應的錯誤信息。
7、額外測試:
分別輸入字母相同,但是大小寫不同的用戶名,驗證第一次注冊應該成功,其他注冊都應該失敗。
輸入已經存在的用戶名或郵箱,驗證注冊失敗并返回相應的錯誤信息。
輸入不同大小寫組合的用戶名,驗證注冊成功并返回正確的userid。
?