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: https://www.python.org/downloads/release/python-395/
PyCharm 2021.1.1: https://www.jetbrains.com/pycharm/download/#section=windows
(这个系列是“用Python”而不是“讲Python”,如果你是Python新手,可以私信我,另有Python资料 )
3. 安装Tavern
当你安装好Python环境后,只需要执行一个命令即可安装
pip install tavern
4. 第一个测试用例
安装好之后,我们通过第一个测试用例可以来体验一下
-
创建一个yaml文件,文件名为
test_sanmu.tavern.yaml
,并写入以下内容 -
执行命令
pytest
测试通过,撒花~~
关于用例文件的格式和解释,在下一篇文章进行介绍