HttpRunner是一款接口測試開源框架,簡潔優雅,是做接口自動化測試很不錯的選擇
聲明:
完整的使用手冊請轉到 http://cn.httprunner.org/
項目源碼:https://github.com/HttpRunner/HttpRunner
1、安裝
1.1 命令行pip直接安裝就好
1.2 驗證安裝
命令行輸入hrun -V,返回項目版本信息則表明安裝成功
2、新建測試項目
這里我用直接通過框架的腳手架工具命令生成目錄結構
如:hrun --startproject BaseAccApiTest
這樣我們就在當前目前目錄下建立了一個測試項目BaseAccApiTest:
3、一個測試用例demo
用例文件描述、detalk文件描述、測試執行方法描述、測試報告描述(內容、log、參數響應等等)
3.1)在BaseAccApiTest\testcases目錄下新建一個yml用例文件
3.2)編寫用例
我們在新建的yml文件中編寫用例信息,如上圖:
- config全局配置項,用於配置此文件中所有用例的公共參數
- 一個test表示一條具體用例
- 在debugtalk.py文件配置所有yml文件公用的參數,如:測試服務域名
3.3)用例執行
命令行下,通過hrun執行指定用例文件。如下圖所示:用例執行通過,並在當前目錄生成測試報告目錄及html測試報告
3.4)測試報告
我們在測試報告目錄下查看html測試報告
- 測試報告summary模塊中會詳細展示測試的執行時間、耗時、用例總數及成功的數量等信息
- 測試報告detail模塊會展示測試用例的詳細執行信息
點開log我們可以看到具體的傳參及響應等信息:
5、高級功能
1)用例分層
在我們上面的實例中,新建的項目有兩個文件夾沒有用到api及suite,他們是干嘛用的呢?
請參考原作者對測試用例分層的描述:
https://testerhome.com/topics/11356
2)報告郵件發送(修改源碼)
在查看http指導文檔時,看到作者有簡單的介紹了下調用郵件服務做接口監控,也就是定時構建並發送測試報告的命令:
因習慣問題,我還是決定用之前框架的方法,直接調用發郵件的函數,只需做到以下幾步就好:
-
將實現好郵件發送功能的mail.py文件丟到python的site-packages文件夾下面的httprunner目錄下
-
在httprunner目錄下的task.py文件run方法中加入調用mail中函數的代碼
-
這里把郵件配置信息(發收件人等放在了mail文件中);運行看下結果
-
打開附件看看
3)壓測
httprunner通過直接復用python的開源測試框架LOCUST(關於LOCUST,請點這里)
安裝完locust后,我們可以直接執行命令來對yml用例中的接口進行壓測:
web監控器啟動成功,我們點擊轉到locust的web頁面
配置壓測參數:
查看壓測結果:
壓測結果分析及locust工具的使用暫且不表