本文由葡萄城技术团队于博客园原创并首发

转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。

最近公司要引入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对比分析的更多相关文章

  1. 开源API测试工具 Hitchhiker v0.7更新 - Schedule的对比diff

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Ap ...

  2. 强大的API测试工具Hitchhiker v0.9 基于UI的断言测试,回顾2017

    v0.9是Hitchhiker在2017农历年的最后一个版本,而起点正是刚过完2016农历年,农历2018即将到来,一年轮回,今天写点东西稍微回顾下hitchhiker的2017. 先还是说v0.9, ...

  3. 开源API测试工具 Hitchhiker v0.10 - 中文版

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...

  4. 如何选择API测试工具

    没有最好,只有最合适. 如今,越来越多的公司正在向DevOps的方向左转,以实现持续集成和持续部署开发.这意味着我们的反馈需要比以往更快,以便确定我们的应用程序是否准备好交付.这就是API测试如此重要 ...

  5. 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到

    Hitchhiker 是一款开源的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Api. 详细介绍 ...

  6. 开源API测试工具 Hitchhiker v0.5更新 - 完善细节

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起管理Ap ...

  7. 开源API测试工具 Hitchhiker v0.6更新 - 改进压力测试

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持Schedule, 数据对比,压力测试,支持上传脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试 ...

  8. 开源API测试工具 Hitchhiker v0.8 - 自动化测试结果统计

    Hitchhiker 是一款开源的支持多人协作的 Restful Api 测试工具,支持自动化测试, 数据对比,压力测试,支持脚本定制请求,可以轻松部署到本地,和你的team成员一起协作测试Api. ...

  9. Hitchhiker 是一款开源的 Restful Api 测试工具

    Hitchhiker 是一款开源的 Restful Api 测试工具 开源API测试工具 Hitchhiker v0.4更新 - 没有做不到,只有想不到 Hitchhiker 是一款开源的 Restf ...

随机推荐

  1. 一个C#程序员学习微信小程序的笔记

    客户端打开小程序的时候,就将代码包下载到本地进行解析,首先找到了根目录的 app.json ,知道了小程序的所有页面. 在这个Index页面就是我们的首页,客户端在启动的时候,将首页的代码装载进来,通 ...

  2. Docker 堆栈

    1.  Stack stack(译:堆叠,堆栈)是一组相互关联的服务,它们共享依赖关系,并且可以一起编排和伸缩. 在上一篇<Docker 服务>中我们知道可以通过创建一个docker-co ...

  3. 一段简单的显示当前页面FPS的代码

    写前端代码,尤其是做一个前端框架的时候,经常需要及时知道代码的大致性能,这时候如果能有个好的办法能一直看到当前页面的fps就好了. 整体思路是一秒有一千毫秒,先记录当前时间作为最后一次记录fps的时间 ...

  4. 『开源』扩展 JS 的 Date 处理函数

    背景: JS 有自己的 时间类型 Date  —— 但是,在某些情况下 这个对象似乎 不太好用. 本文 基于 JQuery 扩展了一些  JS日期函数,包括: > 字符串 转 Date 对象 万 ...

  5. Django学习之十二:Cache 缓存组件

    目录 Django Cache 缓存组件 缓存逻辑伪代码 配置缓存源 可配置参数说明 01. Django的默认缓存 02. 基于Redis的django-redis 03. 自定义cache 04. ...

  6. vue项目,axios请求图片接口,接口返回的是文件流的形式,如何转换成图片?

    axios .get('/captcha', { params: param, responseType: 'arraybuffer' }) .then(response => { return ...

  7. 衡量GDP,哪种夜间灯光数据更靠谱?

    <新科学家>杂志报道,随着经济发展,一些国家通常会新修道路,扩展居民区,这两项措施都会使从太空中看到的灯光强度增加.不少学者利用夜间灯光数据与国内生产总值统计数据进行比较,发现从太空中看到 ...

  8. 读懂 Gradle 的 DSL

    现在 Android 开发免不了要和 Gradle 打交道,所有的 Android 开发肯定都知道这么在 build.gradle 中添加依赖,或者添加配置批量打包,但是真正理解这些脚本的人恐怕很少. ...

  9. 利用MAT玩转JVM内存分析(一)

    本文首发于公众号:javaadu 尽管JVM提供了自动内存管理的机制,试图降低程序员的开发门槛,确实也实现了这一目标,在日常开发中,我们一般都不需要关心对象的内存释放.JVM大部分都是使用trace算 ...

  10. Agent Job代理 执行SSIS Package

    摘要: 在使用Agent Job时, 运行SSIS包的Run as账号,必须有SSIS中connection manager的连接权限. 如果没有连接权限,可以用创建proxy账号,并确保proxy账 ...