本文由葡萄城技术团队于开源中国原创并首发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分免费版和收费版本。安全
下面咱们对这两个工具经过多种维度进行对比,相信经过这些对比维度综合得出的结果,能对也处在为测试工具选型阶段的你带来一些启发和帮助。服务器
经过百度搜索指数能够看出,以近一月的搜索趋势来看,Postman的搜索指数明显高于SoapUI(约5倍),并且总体趋势来看,Postman的搜索趋势仍在增加,说明Postman的知名度高于SoapUI,而且将来仍有潜力。maven
SoapUIsvn
Postman工具
从官方提供的各自产品用户来看,SoapUI 有更多的知名厂家使用。
SoapUI:传统Windows 产品界面,使用弹窗来表示不一样界面,界面表现复杂
PostMan:使用Tab 来表现界面,界面简洁易用。
测试类型
工具 |
测试类型/接口类型 |
|
SoapUI |
API测试:Soap协议,http协议 压力测试 安全测试
|
Soap报文,XX系统 Win 部分和服务器之间的沟通协议。 http协议:http,https请求 |
PostMan |
http协议 压力测试 |
组织方式:SoapUI的组织方式更复杂,也更灵活。
SoapUI:
Postman:
SoapUI: SoapUI+UnitTest 实现接口自动化测试 ,也能够和jenkins 集成。
Postman: Postman + Newman + Jenkins 实现接口自动化测试
都支持接口自动化,SoapUI对编码要求更高一些。
SoapUI:Groovy脚本,JavaScript(通过测试发现支持的很差,尝试提取前一次请求返回内容时会失败)
Postman:JavaScript
工具 |
变量类型 |
做用域 |
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 |
工具 |
数据源 |
生成器 |
循环 |
SoapUI |
Pro 版本:DataSource,数据可来源于文件、目录、数据库、Excel、Grid等 |
Pro版本:DataGen |
Pro版本DataSource Loop |
Postman |
|
无(只能经过脚本) |
Runner中的Iteration |
工具 |
结果 |
日志 |
报告 |
SoapUI |
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 |
SoapUI: 须要经过Groovy 脚原本管理。
Postman: 工具自动管理
SoapUI: 支持在每一个API请求上设置。
Postman: 系统Setting中统一设置。
SoapUI: 不支持。
Postman:支持,能够方便在不一样环境进行切换测试。
SoapUI:自己一个project是一个xml文件,可是能够经过配置变成一系列文件夹,每一个Case、每一个Suite均是独立的文件,这样可经过svn/git进行团队协做。支持性较好
Postman:有团队协做的功能,须要付费。也能够经过Imort/Export 成文件后经过svn/git进行团队协做,一个Collection 能够处处为一个文件。
工具 |
工具成本 |
SoapUI |
社区办免费,开源 高级版本收费 |
PostMan |
基本版本免费 |
综合考虑,若是只是进行Http,https 接口测试建议使用Postman 做为API测试工具,最主要的理由是,简洁易用,学习成本低。