民間流轉的pytest項目結構設計

  • 2022 年 3 月 11 日
  • 筆記

image-20220311215945404

創建上圖的pytest項目結構,只需要一條命令即可

tep startproject demo

image-20220311220135121

前提是安裝tep0.9.8版本:

pip install tep==0.9.8

示例程式碼單獨放在了samples文件夾下,可以放心將整個目錄刪除。其中的db演示了連接MySQL資料庫,http演示了requests常見用法和tep request的猴子修補程式,login_pay演示了從登陸到下單該如何編寫腳本,包括httprunner、mvc(不推薦)、tep(強烈推薦)三種寫法。

fixtures從conftest.py文件中單獨拎了出來。這個設計與Django不謀而合,Django也有個叫做fixtures的文件夾,用來存放測試數據。其實pytest的fixture的本意是可以用來做setup和teardown的,從這個意義來說,fixtures就是存放測試數據的,比如封裝登錄介面為用例提供token。

utils存放了一些工具。比如自帶的fastapi項目,request猴子修補程式,mitmproxy抓包自動生成用例。request猴子修補程式可以自定義日誌輸出格式,在發送請求前後完成任何你想做的操作。

tep0.9.8版本正式發布,對項目腳手架進行了精簡,是為接下來的《tep完整教程幫你突破pytest》做好準備。