python+requests+unittest介面自動化(5):框架主題講解
阿新 • • 發佈:2018-12-25
requests基礎使用講解後,開始自動化框架的搭建。
首先分析需求,從比較複雜的post來當作例項在分析:
request.post(url,data,headers)
正常一個post請求需要url,body和headers。
url一般由基礎url地址和api介面地址組成。所以url可以用config.ini來儲存,視為一個幾乎不變的量(以防由測試環境的變化);同時在用例內部進行url的拼接。所以首先需要一個config.ini檔案和讀取config檔案的readConfig.py。當前config.ini還要儲存其他的路徑資訊,來為環境變化做準備(比如路徑變化)。
body因為每個介面的資料不同,所以不需要封裝讀取,直接在每個用例裡寫明。
headers一般也是不盡相同,所以不用封裝讀取,但是access_token,session等需要登入後獲取,每次呼叫介面時都需要填寫在headers中,可以使用writeconfig包寫入config.ini檔案中,來方便介面的呼叫,同時因為config檔案編寫次數不多,所以不用封裝方法來多次呼叫。
另外可以加入logging模組,進行錯誤資訊的統計。
所以總體下來目錄結構是這樣的:
apitest
-testcase(測試用例)
-config(config方法封裝和ini檔案)
-config.ini
-readconfig.py
-logreport(logging方法封裝和產生的日誌)
-log.py
-logreport
-report(測試報錯)
-run.py(測試用例執行)