0.4.0 版本更新主要围绕这几个方面:
-
分组独立的 UI,支持分组 API 鉴权
-
API 测试支持继承 API 鉴权
-
支持用户自定义鉴权插件,仅需部分配置即可发布鉴权插件
开始介绍功能之前,我想先和大家分享一下鉴权功能设计的一些思考。
其实和大部分接口测试前要登录类似,鉴权是身份验证的一种方式。在大多数情况下,鉴权信息一般是:
-
对大多数 API 生效而不是仅某几个 API 需要鉴权
-
测试使用不需要显示在文档信息中,一般会有个说明文件全局说明此项目下的 API 使用什么鉴权
以下三种设计都可以满足在测试前自动鉴权的需求:
-
鉴权信息配置在分组/项目中,内部的 API 从父级继承鉴权信息
-
每个 API 配置独立的鉴权
-
在环境中配置鉴权信息,选中后 API 引用环境信息鉴权
我们如何判断要将这个功能放在哪里呢?
我们先来分析分组和环境的使用范围:
-
分组:对一系列 API 生效,适合放置鉴权/登录等一系列 API 都可能用到的前置条件,也可以设置公共的断言(例如状态码等于 200)
-
环境:灵活的全局变量用法,和 API 没有强关联关系,可以根据按不同用户创建(例如 Scar 本地环境/Jack 本地环境),也可以按照不同的服务器环境创建,适合放一些和用户相关联的信息,例如每个测试人员可能都会使用自己的鉴权的账号、密码。
所以一系列 API 都能用到的公共配置框架,我们应该放到项目/分组去实现,同时通过环境来填写配置变量数据,这样可以复用大家的设置,让团队内的 API 和测试数据更方便维护。
基于上面考虑,我们的鉴权支持在分组配置,我们继续来看看如何使用~
选中相应的分组-选中鉴权,因为鉴权值涉及到敏感数据,为了在协作环境中工作时保持此数据安全,我们建议使用全局变量。
添加环境,配置全局变量,添加后程序会自动选中这个环境。
再次测试,可以看到鉴权已经成功!
当然啦,除了官方提供的 Basic、JWT ,其实还有很多其他鉴权方式例如 NTLM、微信签名、AWS 签名等等。
所以我们将鉴权功能设计成了可拓展的!!
例如这就是官方的 Basic Auth 鉴权插件代码,核心逻辑不到 30 行,非常简单易懂。
本月官方也计划支持更多鉴权插件:
-
JWT
-
Bear Token
-
APIKey
-
OAuth 2.0
了解 Postcat:
Postcat 是一个强大的开源、跨平台(Windows、Mac、Linux、Browsers...)的 API 开发测试工具,支持 REST、Websocket 等协议(即将支持 GraphQL、gRPC、TCP、UDP),帮助你加速完成 API 开发和测试工作。
Postcat 核心功能:
-
API 文档管理:可视化 API 设计,生成 API 文档
-
API 测试:自动生成测试参数,自动生成测试用例,可视化数据编辑
-
插件拓展:众多插件扩展产品功能,打造属于你和团队的 API 开发平台
-
Mock:根据文档自动生成Mock,或创建自定义 Mock 满足复杂场景
-
团队协作:既能实现API 分享也能可以创建云空间共同协作
Postcat 优势:
-
免登录即可测试:省去繁琐的验证登录的操作
-
界面简洁:没有冗余的功能与复杂选项
-
免费:中小团队以及个人使用
-
丰富的插件:支持数据迁移、主题、API 安全等高达22款插件
-
国产:能更好的理解国内用户的需求,与开发团队沟通无障碍
-
完善的用户文档:跟着操作就能快速上手
多提 Issue !多反馈!
在使用过程中有任何疑问,可以进群交流:
也可以在线提 Issue(强烈推荐这种开源的方式),提问题本身就已经在贡献社区了:
https://github.com/Postcatlab/postcat/issues
如果喜欢,不妨Star 支持一下
这个项目是开源的,如果你觉得这个项目还不错的话,不妨点个 Star 支持一下!
Github :
https://github.com/Postcatlab/postcat
Gitee:
https://gitee.com/eolink_admin/postcat