HttpRunner 是一款面向 HTTP(S) 協議的通用測試框架,只需編寫維護一份 YAML/JSON
腳本,便可實現自動化測試、性能測試、線上監控、持續集成等多種測試需求。python
中文使用文檔地址:https://testerhome.com/opensource_projects/httprunner https://cn.httprunner.org/git
YAML/JSON
的形式描述測試場景,保障測試用例描述的統一性和可維護性
1.首先是環境搭建:github
採用pip安裝或者直接從github上下載安裝 pip install httprunnerjson
安裝完成後cmd命令檢查 hrun -Vapp
2.咱們用相關命令直接生成對應的項目文件夾。框架
hrun --startproject 文件夾 如HttpRunnerDemo分佈式
執行命令後能夠看到對應的目錄生成了函數
從目錄能夠看出httprunner採用分層的設計思想,這一部分下一節再研究。工具
3.咱們在testcases中創建一個demo的yml文件,把接口測試資料按必定的規則寫入,以下實例,yml需遵循嚴格的縮進。性能
- config: request: headers: $content base_url: $host url: /commons_service/weather/getWeatherListByLocation?appType=6&requestId=777777 method: POST - test: name: test weather ID1 request: json: body: {"lat":"", "lng":"", "city":"武漢市"} validate: - eq: [status_code,200] - eq: [json.msg,"成功"] - test: name: test weather ID2 request: json: body: { "lat":"123","lng":"125","city":""} validate: - eq: [status_code,200] - eq: [json.msg,"成功"]
config是接口配置部分,test是用例部分,validate是斷言部分,用例很是格式化因此清晰。
上面的實例,咱們在config中引入了變量 $host $content等,是由於不少接口的公共部分,咱們能夠抽離出來放入debugtalk.py
4.運行用例,用hrun命令,以下:hrun \tests\testcases\test_weather.yml
運行能看到運行結果以及生成測試報告,咱們打開報告查看:
測試信息在報告中都有記錄,咱們能夠打開log查看詳情,咱們能夠清晰的看到接口返回和咱們的斷言結果。
固然httprunner還支持接口錄製(用抓包工具生成.har文件)後轉爲可執行的用例(用har2case),最重要的是,測試用例和代碼的分離。這樣使得稍有編碼功底的人迅速上手。
下一篇將會學習har2case和測試分層的知識。