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 ...
随机推荐
- 用css实现正方形div
目标:实现一个正方形,这个正方形边长等于 方法一:使用单位vw, (ps我觉得这个是最简单的方法) html结构也很简单,只有一个div即可 <html> <body> < ...
- 16 , CSS 边框与边界
1.CSS 中边框的使用 2.CSS 中边界的使用 16.1 CSS 中边框的使用 属性名称 属性值 说明 border-color 十六进制 可依序设置上,右,下,左线颜色 英文名称 border- ...
- Error:Execution failed for task ':app:processDebugManifest'.
Attribute meta-data#android.support.VERSION@value value=(26.1.0) from AndroidManifest.xml:28:13-35 i ...
- Maven 基本的认识
Maven 基本的认识 1. 什么是Maven? 在平时开发中,经常遇到某个jar包,我在代码层已经Import 和@Automation了,编译器还是提醒你某个jar包找不到,往往这时来个mvn i ...
- python线程(二)代码部分
使用threading创建线程: from threading import Thread def work(name): print(f"我是线程{name}") if __na ...
- windows update error 0x8024401c
Error 0x8024401c 以管理员身份运行-命令提示符 执行以下3条命令 net stop wuauserv reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Po ...
- Java核心技术第五章——1.类、超类、子类(1)
1.定义子类: 关键字extends表明正在构造的新类派生与一个已存在的类.已存在的类称为超类.基类或父类:新类称为子类.派生类或孩子类.超类和子类是Java程序员最常用的两个术语(emmm~~我觉得 ...
- PHP全栈学习笔记15
PHP标记风格 PHP一共支持4种标记风格 <?php echo "这是XML风格的标记"; ?> 脚本风格 <script language="php ...
- PHP全栈学习笔记10
php常量,常量是不能被改变的,由英文字母,下划线,和数字组成,但是数字不能作为首字母出现. bool define ( string $name , mixed $value [, bool $ca ...
- 我们为什么要搞长沙.NET技术社区(4)
我们为什么要搞长沙.NET技术社区(4) 邹溪源,2019年3月7日 Ps:文中的.NET 包括且不限定于传统.NET Framework技术和.NET Core技术. 1. 楔子 昨天(201 ...