【Tavern】1.tavern測試框架介紹
1. Tavern 和 Postman
Tavern是一個用Python實現的介面自動化測試工具,支援RESTful API 和MQTT。
和Postman相比,有以下優點:
- 使用yaml的描述測試用例,簡單、清晰、直觀,特別是對於非開發人員而言
- 與pytest無縫集成,可用pytest的強大功能和各種插件
- 功能齊全的Python環境,允許你輕鬆編寫各種自定義斷言
- 支援對MQTT系統測試
也一些劣勢:
- 沒有GUI
- 沒有API monitoring
- 沒有Mock Server
這是因為tavern只專註做好一件事:API自動化測試,其他事情應當交給專業的工具去做(在Python世界中,有足夠多的專業工具)
實際上,Tavern有三種使用方式,以適用於不同的技術基礎、應用場景,分別是:
-
作為pytest插件使用
-
作為命令行工具使用
-
作為python庫使用
其內部使用pytest、requests等知名python自動化測試工具,
如果你對這些工具有經驗,使用tavern非常容易,
如果沒有經驗,也可以藉此進行了解,為日後自定義測試框架打好基礎
本系列文章將介紹第一種,也就是最容易上手的方式,無論你是否擁有Python經驗,都能夠快速實現介面自動化測試
2. 安裝Python
首先你應該一個python環境,如果沒有的話下載下面兩個安裝包,默認安裝即可:
Python 3.9.5: //www.python.org/downloads/release/python-395/
PyCharm 2021.1.1: //www.jetbrains.com/pycharm/download/#section=windows
(這個系列是「用Python」而不是「講Python」,如果你是Python新手,可以私信我,另有Python資料 )
3. 安裝Tavern
當你安裝好Python環境後,只需要執行一個命令即可安裝
pip install tavern
4. 第一個測試用例
安裝好之後,我們通過第一個測試用例可以來體驗一下
-
創建一個yaml文件,文件名為
test_sanmu.tavern.yaml
,並寫入以下內容 -
執行命令
pytest
測試通過,撒花~~
關於用例文件的格式和解釋,在下一篇文章進行介紹