軟件測試
手動測試
測試用例8大要素
- 編號
- 用例名稱(標題)
- 模塊
- 優先級
- 預制條件
- 測試數據
- 操作步驟
- 預期結果
接口測試(模擬http請求)
接口用例設計
- 防止漏測
- 方便分配工具,評估工作量和時間
- 接口測試測試點
- 功能
- 單接口
- 業務場景
- 性能
- 響應生成
- 兼容性
- 并發性
- 服務器資料利用率
- 安全性
- 攻擊安全
- 業務安全
- 功能
接口測試用例文檔10要素
- 編號
- 用例名稱(標題)
- 模塊
- 優先級
- 預制條件
- 請求方法
- url
- 請求頭
- 請求體(請求數據)
- 預期結果
1. 單接口測試
- 數值
- 正向
- 反向
- 參數
- 正向
- 必選
- 可選
- 全部
- 反向
- 多參數
- 少參
- 無參
- 錯誤參數
- 正向
2 業務場景測試
用戶怎樣用怎樣測試,分析接口文檔編寫測試用例,使用postman工具查看響應數據
使用postman管理,執行測試用例,生成測試報告
測試點:先登錄>>>>添加員工>>>>查詢員工>>>>修改>>>>在查詢>>>>刪除>>>>查詢是否刪除成功
測試用例編寫
postman工具
1. 工具使用
- 簡介
- 安裝
- 案例:get,post請求,用接口文檔,開發者工具,fiddler獲取http數據
2. 使用postmanpostman管理,執行測試用例,生成測試報告
-
導入,到處用例集合
-
postman的斷言,實現自動化測試
-
斷言響應狀態碼
//斷言響應狀態碼是否為200 //pm:postman的實例 //test():postman的方法,兩個參數 // 參數1:" "斷言結束后的文字提示 // 參數2:一個匿名函數(功能:pm的響應結果中應該包含狀態碼200),pm.response.to.have.status(200);函數體 pm.test("status code is 200",function(){pm.response.to.have.status(200); });
-
斷言響應體是否包含莫格字符串
-
斷言響應體是否等一莫格字符串(對象)
-
斷言json數據
-
斷言響應頭
-
-
全局變量與局部變量
//全局變量 pm.globals.set("var_name",value); //環境變量 pm.environment.set("var_name",value);
postman請求前置腳本
點擊send后第一時間被執行。postman內部再http請求之之前發送。
- 設置時間戳
//拿到時間戳代碼,設置到全局變量中
var timestamp = new Date().getTime();//發送請求時攜帶過去
pm.globals.set("glb_timestamp",timestamp)
- 使用時間全局變量
- 原理圖:
postman關聯
- 用途:應用于多個http請求之間,有數據關聯,或依賴關系時
- 實現步驟(A接口依賴于B接口的值):
- B接口發送http請求,獲取數據
- 將數據設置到全局變量(環境變量)
- A接口獲取全局(環境)變量中的數據值進行使用
//獲取全部響應結果中
var jsonData = pm.response.json()
//從響應結果中獲取城市名
var city = jsonData.weatherinfo.city
//將城市名寫到全局變量中
pm.globals.set("glb_city",city)