端到端测试?何必Postman,试试Automan

如果使用 Postman 编写端到端测试用例,甚至实现了自动化测试平台,你是否和我一样正在经历这样的痛楚:

  1. 每个测试用例都要花费大量的时间去构造请求、编写脚本检查回包数据;
  2. 开发一段时间后,每个请求的脚本代码变得庞大、杂乱;
  3. 为了实现自动化测试,还要开发脚本代码使用 newman 去运行 Postman 集合。

Yes,我们需要一个新的测试工具,有请 Automan!

Automan 旨在帮助我们快速完成API测试编写,怎么做到又快又简单?

首先,服务端生成 API Schema

我们以 Spring Boot 框架为例,我们编写了一个 Java 库,通过 Spring Boot 提供的机制扫描服务上下文提供的所有接口,并提取参数、路径信息生成 API Schema:

json 复制代码
{
  "internal": {
    "v1": {
      "syncDomainModel": {
        "syncProduct": {
          "paths": [
            "/internal/v1/sync/{referenceId}"
          ],
          "methods": [
            "POST"
          ],
          "requestParams": {
            "referenceId": "string"
          },
          "requestType": "SyncDomainRequest",
          "responseType": "SyncDomainResponse",
          "allTypes": {
            "SyncDomainResponse": {
              "extension": "Map<string,?>",
              "mainModelName": "string",
              "extensionModelName": "string",
              "main": "Map<string,?>"
            },
            SyncDomainRequest": {
              "extensionFields": "TargetField[]",
              "mainFields": "TargetField[]",
              "modelId": "string",
              "extensionModelName": "string",
              "modelType": "string"
            },
            "TargetField": {
              "newValue": "?",
              "name": "string"
            }
          }
        }
      }
    }
  }
}

API Schema 包含了接口的请求方法、路径、参数以及负载。尤其要指出其中涉及的数据都有类型定义,Automan 将使用这些类型定义生成动态表单,帮助我们快速构建请求负载。

以后我们会为更多的 Web 框架提供 Schema 生成库,当然这也仰仗你我开源社区的力量。如果您对这部分感兴趣可以跟踪这个仓库:Automan-Schema-Providers

构建请求

有了 API Schema 我们就可以快速构建请求。

1.选择接口

选择好接口,相关的路径、请求方法就被自动带过来了。

2.输入请求负载和期望回包数据

Automan 提供基于类型生成的动态输入框,我们能非常迅速地编写好请求负载和期望回包数据。

3.参数传递

很多场景中,一个测试用例包含多个请求,请求之间也有先后依赖和数据传递关系。在 Postman 里我们通过编写脚本代码来实现,而在 Automan 里,脚本代码不是第一选择。

4.回包数据校验

在 Postman 里也必须编写脚本去检查回包数据,Automan 重复一遍,不想要脚本!

面向自动化测试

Automan 在设计之初就在考虑如何实现自动化测试。目前我们提供了一个 npm package,允许我们通过命令行运行指定脚本,同理也可以很方便地在容器镜像中启动测试。

什么时候可以用到?

Automan 现在已经完成了核心需求开发,计划将在今年年底上线 Vscode 插件市场 ------ BETA 版本。因为是利用闲暇时间开发,还有较多细节、以及文档工作需要完成。如果您对这个项目有什么想法建议,欢迎来聊。

如果您想了解更多,Check Automan in PC.

相关推荐
小陈的进阶之路3 天前
postman-mcp-server
测试工具·lua·postman
MegaDataFlowers4 天前
基于EasyCode插件的SpringBoot和Mybatis框架快速整合以及PostMan的使用
spring boot·mybatis·postman
林开落L5 天前
【项目实战】在线五子棋对战项目测试报告
功能测试·jmeter·压力测试·postman·性能测试·xmind
momo5 天前
POSTMAN
测试工具·postman
实名上网宋凯宣5 天前
postman怎么用?
测试工具·postman
TechExplorer3656 天前
Postman 9.12 安装、汉化、禁用更新
测试工具·lua·postman
测试19987 天前
postman接口测试详解
自动化测试·软件测试·python·测试工具·测试用例·接口测试·postman
林开落L9 天前
【项目实战】博客系统完整测试报告(含自动化+性能测试)
python·功能测试·jmeter·自动化·postman·性能测试·xmind
HoneyMoose10 天前
Postman 测试 API 如何上传文件
测试工具·postman