前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >轻量级测试框架Tavern(一)

轻量级测试框架Tavern(一)

作者头像
无涯WuYa
发布2021-07-09 11:43:38
8850
发布2021-07-09 11:43:38
举报
文章被收录于专栏:Python自动化测试

Tavern是一款轻量级的测试框架,集合Pytest的测试框架,可以把测试的描述信息(API的请求信息)以及测试断言都可以编写在Yaml的文件中,然后结合Pytest的测试框架直接解析Yaml就可以来批量的执行。在Tavern的测试框架中,它追求的是“Easier API testing”的设计理念,不过从目前实践的应用来看,它是符合这样的一种简单的模式的,Easy to Write, Easy to Read and Understand。

下面主要还是结合具体的来看它的应用,比如我们测试一个登录的接口,它的响应数据以及结果信息如下:

在这样的一个API测试中,我们使用Tavern实现的模式其实非常简单,创建文件test_example_login.tavern.yaml,内容具体内容:

代码语言:javascript
复制
test_name: 登录API请求
stages:
  - name: 登录API请求
    request:
      url: http://localhost:5000/login
      method: POST
      json:
        username: wuya
        password: admin
        sex: 男
        age: 18
    response:
      status_code: 200
      json:
        age: 18
        password: admin
        sex: "男"
        username: wuya

执行命令为:

我们可以看到,很轻松的执行完成,而且在Yaml的文件里面,针对被测试的API的描述是非常清晰的。那么Tavern的测试框架它能够解决一个什么问题了?我个人理解,它能够解决的是给部分不会使用编程语言的测试同学也可以使用该轻量级的测试框架,也可以来进行API的自动化测试。当然,不管是基于什么样的测试框架测试,它都是需要报告的。其实Tavern既然是基于Pytest来进行设计的,那么也就可以使用Allure的测试报告,这里假设都已配置了Allure的环境变量,并且都已安装,使用如下命令也就能够生成测试报告,具体命令如下:

这样就会显示出测试报告,查看如下测试报告,具体如下:

在如上中,我们可以看到使用Tavern很轻松的就能够实现API的自动化测试,也符合了Easy to Write, Easy to Read and Understand的设计思想。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python自动化测试 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档