本文由葡萄城技術團隊於開源中國原創並首發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測試工具,最主要的理由是,簡潔易用,學習成本低。