1. Tavern 和 Postman

Tavern是一个用Python实现的接口自动化测试工具,支持RESTful API 和MQTT。

Postman相比,有以下优点:

  • 使用yaml的描述测试用例,简单、清晰、直观,特别是对于非开发人员而言
  • 与pytest无缝集成,可用pytest的强大功能和各种插件
  • 功能齐全的Python环境,允许你轻松编写各种自定义断言
  • 支持对MQTT系统测试

也一些劣势:

  • 没有GUI
  • 没有API monitoring
  • 没有Mock Server

这是因为tavern只专注做好一件事:API自动化测试,其他事情应当交给专业的工具去做(在Python世界中,有足够多的专业工具

实际上,Tavern有三种使用方式,以适用于不同的技术基础、应用场景,分别是:

  1. 作为pytest插件使用

  2. 作为命令行工具使用

  3. 作为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. 第一个测试用例

安装好之后,我们通过第一个测试用例可以来体验一下

  1. 创建一个yaml文件,文件名为test_sanmu.tavern.yaml,并写入以下内容

  2. 执行命令pytest

测试通过,撒花~~

关于用例文件的格式和解释,在下一篇文章进行介绍

【Tavern】1.tavern测试框架介绍的更多相关文章

  1. python pytest测试框架介绍二

    在介绍一中简单介绍了pytest的安装和简单使用,接下来我们就要实际了解pytest了 一.pytest的用例发现规则 pytest可以在不同的函数.包中发现用例,发现的规则如下 文件名以test_开 ...

  2. spring boot应用测试框架介绍

    一.spring boot应用测试存在的问题 官方提供的测试框架spring-boot-test-starter,虽然提供了很多功能(junit.spring test.assertj.hamcres ...

  3. 【转】Java学习---10个测试框架介绍

    [原文]https://www.toutiao.com/i6594302925458113027/ JAVA 程序员需要用到 10 个测试框架和库 Java 程序员需要用到十大单元测试和自动化集成测试 ...

  4. 【pytest系列】- pytest测试框架介绍与运行

    如果想从头学起pytest,可以去看看这个系列的文章! https://www.cnblogs.com/miki-peng/category/1960108.html 前言​ ​ 目前有两种纯测试的测 ...

  5. 『德不孤』Pytest框架 — 1、Pytest测试框架介绍

    目录 1.什么是单元测试框架 2.单元测试框架主要做什么 3.单元测试框架和自动化测试框架有什么关系 4.Pytest测试框架说明 5.Pytest框架和Unittest框架区别 (1)Unittes ...

  6. python pytest测试框架介绍三

    之前介绍了pytest以xUnit形式来写用例,下面来介绍pytest特有的方式来写用例 1.pytest fixture实例1 代码如下 from __future__ import print_f ...

  7. MySQL Test Run 测试框架介绍

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 介绍 MySQL Test Run 简称MTR,是MySQL官方提供的自动化测试框架,执行脚本在发布路径的mysql-te ...

  8. python pytest测试框架介绍四----pytest-html插件html带错误截图及失败重测机制

    一.html报告错误截图 这次介绍pytest第三方插件pytest-html 这里不介绍怎么使用,因为怎么使用网上已经很多了,这里给个地址给大家参考,pytest-html生成html报告 今天在这 ...

  9. 自动化测试===Httprunner测试框架介绍

    项目地址: https://github.com/HttpRunner/HttpRunner 中文手册: http://cn.httprunner.org/ 首先是环境搭建: pip install ...

随机推荐

  1. Java 语言基础 (初识Java语言, 变量和数据类型, 运算符, 流程控制语句, 数组)

    初始 Java 语言 Java SE -- Java Platform, Standard Edition 是 Java 平台的基础 Java SE 以前称为 J2SE, 可以编写桌面应用和基于 we ...

  2. C# 获取Word文本高亮和背景(附vb.net代码)

    Word中的文本高亮和背景是通过不同方法来设置的.文本高亮(Text Highlight Color)是通过[字体]中的快速工具栏设置:文本背景(Text Background/Shading)是通过 ...

  3. Detach blobs with a contact point

    https://answers.opencv.org/question/87583/detach-blobs-with-a-contact-point/ 一.问题描述 带有接触点的斑点时遇到问题,需要 ...

  4. Web 前端 - 又不仅限于 Web 前端 - 协程锁问题

    前言 最近两天的 web 前端开发中,早前的锁实现 (自旋锁) 出现了一些不合理的现象,所以有了这片随笔 什么是协程锁?能点进这个博客的的你肯定是明白的,不明白的人根本搜不到我这随笔,不多做赘述. 一 ...

  5. macbook/macOS下打开多个相同应用(应用多开)

    1.部分应用可使用common+n快捷键.如qq:打开qq主界面后使用common+n即可新起一个qq程序. 2.在终端使用命令 open -n +程序路径.如启动多个qq :  open -n /A ...

  6. Dynamics CRM字段安全配置文件

    在实施Dynamics CRM的过程中,有些需求会提到部分字段针对特殊的人员或者团队进行显示.更新以及创建的需求的控制.这里我们就需要用到字段安全性文件这个功能.此功能针对具体实体的字段进行配置可以达 ...

  7. 强大的 Guava 工具类

    Java 开发的同学应该都使用或者听说过 Google 提供的 Guava 工具包.日常使用最多的肯定是集合相关的工具类,还有 Guava cache,除了这些之外 Guava 还提供了很多有用的功能 ...

  8. OOUML系列总结及终章回顾

    盼望着,盼望着,OO课程终于结束了,但是,此刻的我却感到一丝失落,甚至想着再来一单元岂不妙哉? 目录 总结本单元三次作业架构 四个单元中架构设计及OO方法理解的演进 四个单元中测试理解与实践的演进 课 ...

  9. springcloud面试题【第一期】

    全文目录 1:谈一谈你对微服务的理解? 2:微服务之间是如何独立进行通讯的? 3:springcloud和dubbo有哪些区别? 4:springboot和spring cloud得区别? 5:Eur ...

  10. unzip解压中文乱码

    1 问题描述 直接 unzip xxx.zip 乱码,肯定是编码问题了不用问.但是unzip没有指定编码的选项: 网上的解决方案如下: unzip -O GBK/GB18030CP936 xx.zip ...