【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: 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
测试通过,撒花~~
关于用例文件的格式和解释,在下一篇文章进行介绍
【Tavern】1.tavern测试框架介绍的更多相关文章
- python pytest测试框架介绍二
在介绍一中简单介绍了pytest的安装和简单使用,接下来我们就要实际了解pytest了 一.pytest的用例发现规则 pytest可以在不同的函数.包中发现用例,发现的规则如下 文件名以test_开 ...
- spring boot应用测试框架介绍
一.spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit.spring test.assertj.hamcres ...
- 【转】Java学习---10个测试框架介绍
[原文]https://www.toutiao.com/i6594302925458113027/ JAVA 程序员需要用到 10 个测试框架和库 Java 程序员需要用到十大单元测试和自动化集成测试 ...
- 【pytest系列】- pytest测试框架介绍与运行
如果想从头学起pytest,可以去看看这个系列的文章! https://www.cnblogs.com/miki-peng/category/1960108.html 前言 目前有两种纯测试的测 ...
- 『德不孤』Pytest框架 — 1、Pytest测试框架介绍
目录 1.什么是单元测试框架 2.单元测试框架主要做什么 3.单元测试框架和自动化测试框架有什么关系 4.Pytest测试框架说明 5.Pytest框架和Unittest框架区别 (1)Unittes ...
- python pytest测试框架介绍三
之前介绍了pytest以xUnit形式来写用例,下面来介绍pytest特有的方式来写用例 1.pytest fixture实例1 代码如下 from __future__ import print_f ...
- MySQL Test Run 测试框架介绍
GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 介绍 MySQL Test Run 简称MTR,是MySQL官方提供的自动化测试框架,执行脚本在发布路径的mysql-te ...
- python pytest测试框架介绍四----pytest-html插件html带错误截图及失败重测机制
一.html报告错误截图 这次介绍pytest第三方插件pytest-html 这里不介绍怎么使用,因为怎么使用网上已经很多了,这里给个地址给大家参考,pytest-html生成html报告 今天在这 ...
- 自动化测试===Httprunner测试框架介绍
项目地址: https://github.com/HttpRunner/HttpRunner 中文手册: http://cn.httprunner.org/ 首先是环境搭建: pip install ...
随机推荐
- Asa's Chess Problem
一.题目 给定一张 \(n\times n\) 的矩阵,每个点上面有黑棋或者是白棋,给定 \(\frac{n\times n}{2}\) 对可以交换的位置,每对位置一定在同一行 \(/\) 同一列.\ ...
- Poj 3370
题目传送门:https://vjudge.net/problem/POJ-3370 题意:在n个数中找K个数使得他们的和为c的倍数. 题解:抽屉原理,同poj 2356 只不过写法上有所简化. 简化版 ...
- 简要说一下.Net的编译过程.
看面试题的时候遇到这样一道题目,简要说明.NET的编译过程,在网上看了很多资料,简单总结如下: 1.一般的编译过程 通常高级语言的程序编译过程是:首先写好的程序是源代码,然后编译器编译为本地机器语言, ...
- 浅谈意图识别各种实现&数学原理
\[ J_\alpha(x) = \sum_{m=0}^\infty \frac{(-1)^m}{m! \Gamma (m + \alpha + 1)} {\left({ \frac{x}{2} }\ ...
- OMnet++ 初学者教程 第一节 入门
第1部分-入门 1.1模型 首先,让我们从一个包含两个节点的"network"开始.节点将做一些简单的事情:一个是节点将创建一个数据包,而两个节点将继续来回传递相同的数据包.我们将 ...
- irace package -- 参数调优神器
目录 1. irace 是什么 2. 安装 irace 3. irace 的运行机制 4. irace 的配置环境 4.1. parameters 4.2. target algorithm runn ...
- Java基础回顾_第一部分
Java基础回顾 基本数据类型 数值类型 什么是字节? 位(bit):是计算机中数据的最小单位 字节(byte):是计算机中数据处理的基本单位,习惯上用大写字母B来表示 1 B = 8 bit 字符: ...
- [BFS]翻币问题
翻币问题 Description 有N个硬币(6<=N<=20000)全部正面朝上排成一排,每次将其中5个硬币翻过来放在原位置,直到最后全部硬币翻成反面朝上为止.试编程找出步数最少的翻法, ...
- 跨域库herryPostMessage.js的一些优化,多iframe跨域
旧库见文章:https://www.cnblogs.com/wuhairui/p/14595893.html 新版库主要做了下多个iframe和父页面交互的优化.主要使用构造函数的方式将多个ifram ...
- Linux 网络工具中的瑞士军刀 - socat & netcat
独立博客阅读:https://ryan4yin.space/posts/socat-netcat/ 文中的命令均在 macOS Big Sur 和 Opensuse Tumbleweed 上测试通过 ...