在当前行业发展背景下,绝大部分项目都是基于前后端分离的架构进行的,由前后端、测试、运维等不同的团队共同开发,那么团队之间能否很好的 协同合作 无疑直接决定着项目的最终效果。
但是在实际开发流程中,团队之间的协同是很低效的,在联调时极易出现定义不一致等诸多问题。而且还用到了不同的工具如 Swagger、Postman、Mock、JMeter
明显造成了很多资源的浪费和低效使用。
如果你想学习接口自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的接口自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386
【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1.【接口自动化】目前软件测试的市场行情以及测试人员能力标准。、2.【接口自动化】全面熟练Requests库以及底层方法调用逻辑、3.【接口自动化】接口自动化实战及正则和JsonPath提取器的应用等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a
Apifox 有哪些功能
针对以上问题,Apifox 也确实提出了实际的解决方案,在 Apifox 官网中展示着这么一句话 Apifox = Postman + Swagger + Mock + JMeter,也就是将这四个开发工具的核心功能综合到了一起
使得前端、后端、测试均可方便定义和使用 API,避免工作的大量重复,最重要的是关于 API 的任何调整都可以实时同步到各个团队,保证项目过程中各个环节的一致性。
除此之外,Apifox 还具有以下丰富的功能:
API 文档:可视化的接口文档管理,支持数据结构定义,多接口复用相同数据结构,接口文档遵循 OpenAPI 规范,支持接口文档在线分享。
API 调试:拥有 Postman 的所有功能,更好用,可自动校验数据结构,自动发现接口异常。
API 自动化测试:完善的接口场景测试功能,支持调用其他编程语言。
API 数据 Mock:零配置即可 Mock 出非常人性化的数据,内置 mock.js 规则引擎,支持自定义期望。
CI 持续集成:支持命令行方式运行接口测试,支持集成 Jenkins 等持续集成工具。
数据库操作:支持数据库的读取与接口校验。
自动生成代码。
数据导入/导出:支持导入/导出十多种数据格式。
团队协作。
…
API First 理念下的开发流程
Apifox 秉承的是 API first(API 优先)的先进理念,也就是开发团队首先制定 API,然后围绕 API 展开设计和开发。
使用 Apifox 之后,开发效率会大大提升且各方工作体验更好,与外部团队的协作也会更加顺畅。在此理念下的开发流程是这样的:
团队管理&项目管理
点击 “新建团队” 进行创建;
创建成功如下,在团队中可以新建项目、添加成员和权限授予等操作;
接下来新建一个项目;
点击项目进入后如下,可对此项目进行、接口管理、自动化测试、项目设置和邀请成员等相关操作;
编写接口文档
点击“+” --> “新建接口”;
如下是我新建的一个登录接口示例:
#接口地址、接口基本信息
#请求参数设置
#接口响应设置
设置完相关属性之后,点击保存,此时就会生成一个基于 Apifox 的接口文档,可以看到还可以运行此接口或者直接生成代码操作;
智能 Mock 数据
可以看到在文档中有一个 Mock 区域,包含 Mock url;
我们复制此 mock 地址,在浏览器打开,便可以直接访问到 mock 数据;
在 API 文档设定好之后就可以直接用这个 Mock 地址来做开发了。
在线分享 API 文档
点击“项目概览”,新建在线分享;
设定分享对象等参数;
随后便可以复制链接进行分享了;
查看链接效果如下;
自动化测试
在进行自动化测试之前,我们先将当前的接口文档保存为用例,方便后面直接将接口用例导入自动化测试。
点击“自动化测试” --> “测试用例” --> “创建” 新建测试用例;
创建成功后点击用例进入,如下;
点击 “添加步骤”,然后选择 “从【接口用例导入】”;
用例导入后如下;
此时可以设置相关的运行属性包括运行环境、线程数等,也可以测试数据,这里支持导入 CSV 或者手动添加数据集。
最后点击 “运行” 进行测试;
API Hub
Apifox 为我们提供了市面上最常用的各种 API,可以方便的直接使用并且一键调试。
点击 “切换项目”,然后选择 API Hub,如下;
点击进入一个 API,我们便可以选择接口进行调试和运行;