前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >强!20K star!一款可替代 Postman 的API 测试工具,开源免费、完全离线、基于 Git 版本控制!

强!20K star!一款可替代 Postman 的API 测试工具,开源免费、完全离线、基于 Git 版本控制!

作者头像
测试开发技术
发布2024-05-17 17:24:11
1620
发布2024-05-17 17:24:11
举报
文章被收录于专栏:测试开发技术测试开发技术

1、引言

在软件开发和测试领域,API测试是确保软件接口稳定、可靠的重要一环。随着API的复杂性和数量的不断增加,对API测试工具的需求也日益增长。Postman作为一款广受欢迎的API测试工具,凭借其直观的用户界面和丰富的功能,赢得了大量开发者和测试人员的青睐。然而,随着技术的不断发展,市场上也涌现出了一些新兴的API测试工具,其中Bruno便是一款备受瞩目的新星。

今天就来给大家介绍一款新的测试工具: Bruno

2、Bruno介绍

Bruno 是一款开源且完全可离线的 API 测试工具,它不仅具备Postman的核心功能,如发送HTTP请求、查看响应、保存测试用例等,它还允许开发者在没有网络连接的情况下进行 API 请求和测试。与 Postman 相比,Bruno 提供了类似的接口测试功能,同时还引入集成 Git 版本控制,使得团队协作和历史记录的管理变得更加灵活、可控。

项目地址:

代码语言:javascript
复制
#Github地址
https://github.com/usebruno/bruno

#项目官网
https://www.usebruno.com/

接下来,本文将详细介绍Bruno的特点、与Postman的优缺点对比、安装以及使用方法。

3、Bruno特点

Bruno主要特点如下:

  • 完全离线:Bruno不依赖于任何云服务或在线存储,所有数据均保存在本地,保证了用户数据的安全性和隐私性。
  • 基于Git版本控制:Bruno集成了Git版本控制功能,用户可以轻松地对API测试用例进行版本管理、协同开发和历史记录查看。
  • 丰富的测试功能:Bruno支持发送各种HTTP请求(GET、POST、PUT、DELETE等),支持多种请求头和请求体格式(JSON、XML、表单等),同时提供了断言、变量替换、环境配置等高级功能。
  • 直观的用户界面:Bruno采用简洁直观的界面设计,使得用户可以轻松上手并快速完成API测试任务。
  • 跨平台支持:Bruno支持Windows、Mac和Linux等多种操作系统,方便用户在不同平台上进行API测试。

4、Bruno与Postman优缺点对比

优点

(1)完全离线支持:Bruno的离线特性使得它在一些网络受限或安全性要求较高的环境中具有明显优势。

(2)基于Git版本控制:Bruno的Git版本控制功能使得API测试过程更加可控和可追溯,方便团队协作和项目管理。

(3)安全性:由于所有数据均保存在本地,Bruno在数据安全性方面具有更高保障。

(4)可定制、自定义程度高:Bruno允许用户通过编写自定义脚本和插件来扩展其功能,满足更复杂的测试需求。

(5)轻量级:相比Postman,Bruno更加轻量级,启动速度更快,占用更少的系统资源。

缺点

(1)知名度相对较低,有一定学习曲线:作为一款新兴工具,Bruno的知名度相对较低,可能需要一定的学习和适应成本。

(2)社区支持有限:与 Postman 相比,Bruno 的社区较小,相关的教程和资源可能不如 Postman 丰富。

(3)较少插件支持:Postman 拥有一个庞大的插件生态系统,而 Bruno 在这方面还在发展中,可能无法提供同样广泛的扩展功能。

5、Bruno下载与安装

Bruno支持跨平台,可在Windows、Linux、Mac等不同操作系统下运行

1、直接下载安装

访问https://www.usebruno.com/downloads选择对应平台进行下载,如下所示:

也可以从github releases中下载

代码语言:javascript
复制
https://github.com/usebruno/bruno/releases

2、通过包管理工具,命令行安装

代码语言:javascript
复制
# On Mac via Homebrew
brew install bruno

# On Windows via Chocolatey
choco install bruno

# On Windows via Scoop
scoop bucket add extras
scoop install bruno

# On Windows via winget
winget install Bruno.Bruno

# On Linux via Snap
snap install bruno

# On Linux via Flatpak
flatpak install com.usebruno.Bruno

# On Linux via Apt
sudo mkdir -p /etc/apt/keyrings
sudo gpg --no-default-keyring --keyring /etc/apt/keyrings/bruno.gpg --keyserver keyserver.ubuntu.com --recv-keys 9FA6017ECABE0266

echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/bruno.gpg] http://debian.usebruno.com/ bruno stable" | sudo tee /etc/apt/sources.list.d/bruno.list

sudo apt update
sudo apt install bruno

6、Bruno功能界面与使用

1、主界面显示

当然,若你是首次打开,你的界面还没有这么好看,安装完毕后,首次打开默认界面显示如下:

你可以在此基础上,新建测试集COLLECTION,在测试集下创建测试请求开始你的表演工作,由于这两步太过于简单,就不演示了!

2、官方示例demo

如果你比较懒,但又想尝鲜,可以直接使用官方提供好的demo示例来运行试用bruno,具体操作如下:

代码语言:javascript
复制
# Clone this repo 
git clone https://github.com/usebruno/github-rest-api-collection.git

# open the folder in bruno
# enjoy !!

打开或导入官方测试集后,显示如下:

保存在本地的测试文件后缀为.bru,内容格式类似如下:

代码语言:javascript
复制
post {
  url: https://api.textlocal.in/login
}
 
body {
  {
    "username": "johnnash",
    "password": "governingdynamics"
  }
}
 
script:post-response {
  bru.setVar("token", res.body.token);
}

tests {
  test("should be able to login", function() {
    expect(res.status).to.equal(201);
  });
 
  test("should receive the token", function() {
    expect(res.body.token).to.be.a('string');
  });
}

3、API 请求自动转换成代码

bruno支持将测试请求直接转换成对应语言或框架代码,当前支持PythonPHPJavaScriptShell等脚本,如下:

4、bruno提供脚本支持

bruno提供脚本支持,帮助您为工具添加数据生成、验证以及与其他工具和系统集成等附加功能,包括发送中间请求、解析响应数据、更新环境变量等

5、Vars变量支持

bruno可以利用Vars功能让你在请求之前和收到响应之后设置变量。

6、Assert断言支持

7、多种运行方式支持: 可视化界面、命令行、插件

bruno除了支持可视化界面运行测试外,还支持命令行VSCode插件等多种方式运行。

image

命令行运行方式可参考:https://docs.usebruno.com/bru-cli/overview

若需要用VSCode插件运行的话,直接在插件中心中搜索安装Bruno即可

8、基于Git可以实现版本管理

7、小结

Bruno 作为一款新兴的 API 测试工具,以其独特的离线功能和 Git 集成能力,为开发者提供了一个强有力的替代 Postman 的选择。虽然它在资源和插件方面可能还不如 Postman 丰富,但对于追求效率和便捷性的开发者来说,Bruno 无疑提供了一个值得尝试的解决方案。随着社区的发展和技术的进步,Bruno 有望成为 API 测试领域的一个重要参与者。

好了,今天就先介绍这么多吧,更多使用细节,可查阅官方文档:

代码语言:javascript
复制
https://docs.usebruno.com/

如果觉得有用,就请关注、点赞、在看、分享到朋友圈吧!

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

本文分享自 测试开发技术 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、引言
  • 2、Bruno介绍
  • 3、Bruno特点
  • 4、Bruno与Postman优缺点对比
  • 5、Bruno下载与安装
  • 6、Bruno功能界面与使用
  • 7、小结
相关产品与服务
Prowork 团队协同
ProWork 团队协同(以下简称 ProWork )是便捷高效的协同平台,为团队中的不同角色提供支持。团队成员可以通过日历、清单来规划每⽇的工作,同时管理者也可以通过统计报表随时掌握团队状况。ProWork 摒弃了僵化的流程,通过灵活轻量的任务管理体系,满足不同团队的实际情况,目前 ProWork 所有功能均可免费使用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档