用Python實現數據驅動的接口自動化測試

在接口測試的過程中,很多時候會用到對CSV的讀取操作,本文主要說明Python3對CSV的寫入和讀取。

在接口測試的過程中,很多時候會用到對CSV的讀取操作,本文主要說明Python3對CSV的寫入和讀取。

1. 需求

某API,GET方法,token,mobile,email三個參數

  • token爲必填項

  • mobile,email 必填其中1項

  • mobile爲手機號,email爲email格式

2. 方案

針對上面的API,在做接口測試時,需要的測試用例動輒會多達10+, 這個時候採用數據驅動的方式將共性的內容寫入配置文件或許會更合適。

這裏考慮把API、參數、以及預期結果預行在格式化的CSV裏保存,利用csv組件從CSV裏讀取URL、參數以及預期結果,Requests組件發起請求,將響應結果與預期結果進行比對,最後把比對結果寫到結果CSV。

流程如下圖

                                            用Python實現數據驅動的接口自動化測試

3. 實現

(1) 在上代碼之前,先安裝好如下幾個組件:

  • csv 讀寫CSV文件

  • json

  • requests 發起請求,獲取響應結果

  • unittest 測試用例調度

(2) data.csv(本示例選取部分用例)

用Python實現數據驅動的接口自動化測試

(3) reader_CSV函數代碼示例

用Python實現數據驅動的接口自動化測試

(4) request_URL函數示例(包含GET請求和POST請求2個方法)

用Python實現數據驅動的接口自動化測試

(5) assert_Result函數示例

用Python實現數據驅動的接口自動化測試

(6) write_CSV函數示例

用Python實現數據驅動的接口自動化測試

(7) test_interface1函數示例

用Python實現數據驅動的接口自動化測試

8result_1523956055.csv(本示例中的測試結果請忽略)

用Python實現數據驅動的接口自動化測試

4. 總結

python封裝了很多方法,對於測試來說開發速度相對較快,接口自動化測試如果採用CSV管理的數據驅動方式,使用csv+requests是測試開發不容錯過的利器之一

跟大家推薦一個學習資料分享羣:747981058,裏面大牛已經爲我們整理好了許多的學習資料,有自動化,接口,性能等等的學習資料!人生是一個逆水行舟的過程,不進則退,咱們一起加油吧!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章