API测试工具SoapUI & Postman对比分析
本文由葡萄城技术团队于博客园原创并首发
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。
最近公司要引入API测试工具,经过调查和了解,最终决定在SoapUI 和 Postman两种工具之间做一个选择,两种工具在业界都很有名,相信很多人两种工具也都曾使用过。
SoapUI
SoapUI是一个开源测试工具,通过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。该工具既可作为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。SoapUI Pro是SoapUI的商业非开源版本,实现的功能较开源的SoapUI更多。
Postman
Postman是由Postdot Technologies公司打造的一款功能强大的调试HTTP接口的工具,它最早是Chrome中最受欢迎的插件之一,现已扩展到Mac,Windows和Linux客户端。
软件功能非常强大,界面简洁明晰、操作方便快捷,设计得很人性化。Postman分免费版和收费版本。
下面我们对这两个工具通过多种维度进行对比,相信通过这些对比维度综合得出的结果,能对也处在为测试工具选型阶段的你带来一些启发和帮助。
1.搜索指数


通过百度搜索指数可以看出,以近一月的搜索趋势来看,Postman的搜索指数明显高于SoapUI(约5倍),而且整体趋势来看,Postman的搜索趋势仍在增长,说明Postman的知名度高于SoapUI,并且未来仍有潜力。
2.用户介绍
SoapUI

Postman

从官方提供的各自产品用户来看,SoapUI 有更多的知名厂家使用。
3.界面
SoapUI:传统Windows 产品界面,使用弹窗来表示不同界面,界面表现复杂

PostMan:使用Tab 来表现界面,界面简洁易用。

4.功能
测试类型
|
工具 |
测试类型/接口类型 |
|
|
SoapUI |
API测试:Soap协议,http协议 压力测试 安全测试 |
Soap报文,XX系统 Win 部分和服务器之间的沟通协议。 http协议:http,https请求 |
|
PostMan |
http协议 压力测试 |
组织方式:SoapUI的组织方式更复杂,也更灵活。
SoapUI:

Postman:

5.接口自动化
SoapUI: SoapUI+UnitTest 实现接口自动化测试 ,也可以和jenkins 集成。
Postman: Postman + Newman + Jenkins 实现接口自动化测试
都支持接口自动化,SoapUI对编码要求更高一些。
6.脚本扩展能力
SoapUI:Groovy脚本,JavaScript(经过测试发现支持的不好,尝试提取前一次请求返回内容时会失败)
Postman:JavaScript
7.自定义变量及变量作用域
|
工具 |
变量类型 |
作用域 |
|
SoapUI |
Project、TestSuite、TestCase的Properties以及Custom Properties |
各自以内的范围内 |
|
TestCase里的Properties |
在整个TestCase内 |
|
|
TestCase里的Data Source、DataGen等 |
在整个TestCase内 |
|
|
Groovy脚本定义,JavaScript |
看定义方式 |
|
|
Postman |
Environment Variable |
当前环境的Collection |
|
Global Variable |
所有Collections |
|
|
CSV/JSON datafile |
Runner当前的Collection |
8.数据源,生成器,进行参数化
|
工具 |
数据源 |
生成器 |
循环 |
|
SoapUI |
Pro 版本:DataSource,数据可来源于文件、目录、数据库、Excel、Grid等 |
Pro版本:DataGen |
Pro版本DataSource Loop |
|
Postman |
Runner中运行时,可加载CSV/JSON文件 |
无(只能通过脚本) |
Runner中的Iteration |
9.结果解析,展示
|
工具 |
结果 |
日志 |
报告 |
|
SoapUI |
Project-OverView、TestSuites TestSuite-TestCases TestCase-TestSteps |
SoapUI全局多种log TestSuite log TestCase log Request log |
Project report TestSuite report TestCase report (HTML/XML/CSV) |
|
Postman |
Send可查看Request的Response Runner可查看运行的Result |
Postman console Chrome DevTools |
Request的Response以及Runner的Result均可导出json 可以自定义Report |
10.Cookie 管理
SoapUI: 需要通过Groovy 脚本来管理。
Postman: 工具自动管理
11.跟随重定向(Follow Redirects)
SoapUI: 支持在每个API请求上设置。
Postman: 系统Setting中统一设置。
12.环境管理
SoapUI: 不支持。
Postman:支持,可以方便在不同环境进行切换测试。
13.团队协作
SoapUI:本身一个project是一个xml文件,但是可以通过配置变成一系列文件夹,每个Case、每个Suite均是独立的文件,这样可通过svn/git进行团队协作。支持性较好
Postman:有团队协作的功能,需要付费。也可以通过Imort/Export 成文件后通过svn/git进行团队协作,一个Collection 可以到处为一个文件。
14.工具成本
|
工具 |
工具成本 |
|
SoapUI |
社区办免费,开源 高级版本收费
|
|
PostMan |
基本版本免费
|
15.综合评价
- SoapUI 相对Postman 多了一个Soap 协议测试。根据公司内API测试的要求,如果有需求就会很有用,但我们公司是不需要这个选项的。
- SoapUI 的功能复杂,界面使用多窗口方式实现,交互复杂,学习成本高,对于使用人员有较高要求。
- SoapUI进行API 测试时,是通过Java 直接发送API 请求,和Fiddler等抓包工具的配合需要额外配置。
- SoapUI 测返回内容对用中、日文支持不好,会出现乱码现象。
- SoapUI的API测试,自动测试需要更强的编程技能。
- Postman 脱胎于Chorme 的插件,只支持Http 协议的测试。
- Postman 的界面采用Tab形式,类似chrome 的操作方式,界面简单,功能设计简洁,工程的组织只有Collection 和folder ,层级,概念简洁,易学,易用,对于项目组的学习成本低。
- Postman 的API 测试,自动测试对于编程的要求相对低一些,可以从测试人员中挑选人员进行培训,培训后可以胜任API测试。
16.结论
综合考虑,如果只是进行Http,https 接口测试建议使用Postman 作为API测试工具,最主要的理由是,简洁易用,学习成本低。
API测试工具SoapUI & Postman对比分析的更多相关文章
- 开源API测试工具 Hitchhiker v0.7更新 - Schedule的对比diff
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Ap ...
- 强大的API测试工具Hitchhiker v0.9 基于UI的断言测试,回顾2017
v0.9是Hitchhiker在2017农历年的最后一个版本,而起点正是刚过完2016农历年,农历2018即将到来,一年轮回,今天写点东西稍微回顾下hitchhiker的2017. 先还是说v0.9, ...
- 开源API测试工具 Hitchhiker v0.10 - 中文版
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...
- 如何选择API测试工具
没有最好,只有最合适. 如今,越来越多的公司正在向DevOps的方向左转,以实现持续集成和持续部署开发.这意味着我们的反馈需要比以往更快,以便确定我们的应用程序是否准备好交付.这就是API测试如此重要 ...
- 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到
Hitchhiker 是一款开源的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍 ...
- 开源API测试工具 Hitchhiker v0.5更新 - 完善细节
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Ap ...
- 开源API测试工具 Hitchhiker v0.6更新 - 改进压力测试
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试 ...
- 开源API测试工具 Hitchhiker v0.8 - 自动化测试结果统计
Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...
- Hitchhiker 是一款开源的 Restful Api 测试工具
Hitchhiker 是一款开源的 Restful Api 测试工具 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到 Hitchhiker 是一款开源的 Restf ...
随机推荐
- 强化学习(十九) AlphaGo Zero强化学习原理
在强化学习(十八) 基于模拟的搜索与蒙特卡罗树搜索(MCTS)中,我们讨论了MCTS的原理和在棋类中的基本应用.这里我们在前一节MCTS的基础上,讨论下DeepMind的AlphaGo Zero强化学 ...
- Netty源码—六、tiny、small内存分配
tiny内存分配 tiny内存分配流程: 如果申请的是tiny类型,会先从tiny缓存中尝试分配,如果缓存分配成功则返回 否则从tinySubpagePools中尝试分配 如果上面没有分配成功则使用a ...
- Mqtt学习指南
MQTT是物联网应用当中一种非常重要的,轻量级的协议,现将该协议的重要学习资源整理一下,希望能为初学者提供一个完整的学习资源. MQTT是一个客户端服务端架构的发布/订阅模式的消息传输协议.它的设计思 ...
- Vue应用框架整合与实战--Vue技术生态圈篇
实用框架以及工具 UI组件 开发框架 实用库 服务端 辅助工具 应用实例 Demo示例 UI组件 Element-UI ★13489 - 饿了么出品的Vue2的web UI工具套件 Vux ★8133 ...
- CentOS 查看和修改 Mysql 字符集
客户提供了 mysql 的环境,但是不支持中文,通过以下命令查看了 mysql 的字符集 mysql> show variables like 'character_set%'; 显示如下: + ...
- ASP.NET Core 实战:Linux 小白的 .NET Core 部署之路
一.前言 最近一段时间自己主要的学习计划还是按照毕业后设定的计划,自己一步步的搭建一个前后端分离的 ASP.NET Core 项目,目前也还在继续学习 Vue 中,虽然中间断了很长时间,好歹还是坚持 ...
- VS2017 无法连接到Web服务器“IIS Express”终极解决方案
今天日了gou了,一大早打开VS2017的时候出现无法连接到Web服务器"IIS Express"的错误,然后必应了一下,再谷歌了一下找到的解决方法也都千篇一律,奈何都没能解决,最 ...
- python爬虫–爬取煎蛋网妹子图片
前几天刚学了python网络编程,书里没什么实践项目,只好到网上找点东西做. 一直对爬虫很好奇,所以不妨从爬虫先入手吧. Python版本:3.6 这是我看的教程:Python - Jack -Cui ...
- springBoot(13)---整合Druid实现多数据源和可视化监控
SpringBoot整合Druid实现多数据源和可视化监控 先献上github代码地址:https://github.com/yudiandemingzi/springboot-manydatasou ...
- WebUtils【MD5加密(基于MessageDigest)】
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 用于MD5加密,主要场景是在调用登录接口时对密码进行MD5加密处理. 效果图 暂不需要 代码分析 基于Java.security.M ...

