對比3種接口測試的工具:jmeter+ant;postman;python的requests+unittest或requests+excel

這篇隨筆主要是對比下筆者接觸過的3種接口測試工具,從實際使用的角度來分析下3種工具各自的特色html

分別爲:jmeter、postman、python的requests+unittest或requests+excel前端

 1.利用jmeter進行接口測試

jmeter自己是一個基於java的性能測試工具,它能夠自定義發送http請求,並根據響應結果進行斷言,因此藉助jmeter自帶的一些元件即可以進行接口自動化測試。java

大體思路就是將接口測試用例寫到一份csv文件中,而後構建jmeter腳本逐條讀取csv中的用例數據,結合ant生成測試報告,同時也能夠結合jenkins實現自動定時執行腳本python

特色:jmeter自己是一個功能強大的開源壓測工具,網上有不少相關的使用教程,即便不進行二次開發,僅針對接口測試的話,也能夠達到預期的效果(可以應對咱們公司的大部分接口測試工做),基礎內容的學習成本不是很高;編程

可是編寫接口測試用例是一個耗時的工做,由於用例都寫在一份csv文件,若是請求參數過多,那麼會產生不少組合狀況,寫起來其實挺費勁的;後端

若是想更靈活地運用jmeter的話,須要必定的java功底,對jmeter的一些函數的使用作到心中有數才行,這個須要深刻研究並在工做中實踐纔好。數組

相關隨筆:https://www.cnblogs.com/hanmk/category/1037987.html網絡

2.利用postman進行接口測試

postman只作一件事:網頁調試與發送網頁HTTP請求,因此它自然是一款作API自動化測試工具,並且公司的不少研發(不管前端仍是後端)都喜歡用postman來進行調試工做框架

筆者在年初的時候研究過postman的詳細使用方法,並整理成了系列文章,也在組內進行了相關的技術分享(能夠說是真愛了,哈哈)函數

用postman進行接口測試的大體思路就是以建立集合(Collections)的方式來對接口進行分類,而後對接口再進行細分,一個接口的一種參數組合狀況寫一個請求,以下

若是是有關聯的接口,能夠利用環境變量對其進行參數化,靈活運用Pre-request-Script標籤Tests標籤,便可應對大部分接口測試需求,由於postman自己是基於JavaScript編寫的,因此你能夠編寫js腳原本定製請求(即便是生成時間戳或者MD5 加密簽名)

特色:工具封裝的很好,網頁調試利器,單個調接口十分方便;對於沒有代碼基礎的人來講,新手能夠很快熟悉postman的基礎使用方法,學習成本低;而且學會進階使用方法後能夠應對公司的大部分的接口測試需求。

可是postman在批量執行接口時,生成的報告不太好看,結合Newman+jenkins生成的測試報告更醜

相關隨筆:https://www.cnblogs.com/hanmk/category/1366452.html

 3.python的requests+unittest或requests+excel

 先看一段簡介

也就是說咱們能夠利用requests庫來發送任何http請求,包括:get請求、post請求、put請求等等,因此咱們能夠用requests進行接口測試或者網絡爬蟲。

筆者分別使用python自帶的unittest單元測試框架和requests+excel的方式進行過接口測試,咱們公司並無主推使用代碼來進行接口自動化測試,這裏更可能是本身的一種嘗試,主要是爲了提升python應用能力。

特色:對於編程能力強的人,更喜歡本身編寫代碼來進行接口測試,不管是本身寫框架或是藉助開源框架再根據業務進行二次開發也好,功能能夠定製,用法也比較靈活;

            不過這種方式對我的要求較高,最起碼要熟悉一門語言纔好。這種方式也很難在整個組推廣,由於不可能叫全部人都去寫代碼,黑盒測試目前也仍是不可或缺的(但這是每一個測試人員努力的一個方向,成爲一個既業務又懂代碼的測試人員)。

相關隨筆:https://www.cnblogs.com/hanmk/category/1185856.htmlhttps://www.cnblogs.com/hanmk/category/1203663.html

總結

沒有最好的測試工具或方法,只有最適合的。根據實際業務狀況進行選擇就好

相關文章
相關標籤/搜索