API测试工具SoapUI & Postman对比分析

本文由葡萄城技术团队于开源中国原创并首发git

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

最近公司要引入API测试工具,通过调查和了解,最终决定在SoapUI 和 Postman两种工具之间作一个选择,两种工具在业界都颇有名,相信不少人两种工具也都曾使用过。数据库

SoapUI
SoapUI是一个开源测试工具,经过soap/http来检查、调用、实现Web Service的功能/负载/符合性测试。该工具既可做为一个单独的测试软件使用,也可利用插件集成到Eclipse,maven2.X,Netbeans 和intellij中使用。SoapUI Pro是SoapUI的商业非开源版本,实现的功能较开源的SoapUI更多。编程

Postmanjson

Postman是由Postdot Technologies公司打造的一款功能强大的调试HTTP接口的工具,它最先是Chrome中最受欢迎的插件之一,现已扩展到Mac,Windows和Linux客户端。
软件功能很是强大,界面简洁明晰、操做方便快捷,设计得很人性化。Postman分免费版和收费版本。安全

下面咱们对这两个工具经过多种维度进行对比,相信经过这些对比维度综合得出的结果,能对也处在为测试工具选型阶段的你带来一些启发和帮助。服务器

1.搜索指数

 

经过百度搜索指数能够看出,以近一月的搜索趋势来看,Postman的搜索指数明显高于SoapUI(约5倍),并且总体趋势来看,Postman的搜索趋势仍在增加,说明Postman的知名度高于SoapUI,而且将来仍有潜力。maven

2.用户介绍

SoapUIsvn

 

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测试工具,最主要的理由是,简洁易用,学习成本低。

相关文章
相关标签/搜索